c语言-那些年踩过的坑(持续更新)

本文详细介绍了C语言库函数sscanf的功能,特别是如何从字符串中按格式读取数据,强调了使用%d时必须匹配正确的整型变量类型,以防内存访问异常。通过一个实例代码展示了如何正确使用sscanf并展示了运行结果。
摘要由CSDN通过智能技术生成

# sscanf
## 功能:从字符串读取格式化输入
## 注意事项:如果使用%d读取,切记必须用int或unsigned int的变量来填充,否则会出现结果异常或操作非法地址,因为sscanf %d 会赋值首地址开始的4字节!!!
## 实例代码
#include <stdio.h>
typedef struct
{
    unsigned char test_data1;
    unsigned char test_data2;
    unsigned char test_data3;
}TestData_t;

int main(void *arg, char *argv[])
{
    TestData_t data;
    sscanf("1.2.3", "%u.%u.%u", &data.test_data1, &data.test_data2, &data.test_data3);
    printf("data:%u.%u.%u\n", data.test_data1, data.test_data2, data.test_data3);
    return 0;
}

## 运行结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值