OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6764|回复: 3

sscanf 怎么解析 这个字符串呀

[复制链接]

3

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
105
金钱
105
注册时间
2020-8-24
在线时间
50 小时
发表于 2021-1-7 15:14:38 | 显示全部楼层 |阅读模式
5金钱
有一个字符串 “AA,BB,CC,DD,"
要解析逗号分隔的字符串   

char a[10];
char b[10];
char c[10];
char d[10];
char target[] = “AA,BB,CC,DD,"
int ret = sscanf(target,"%[^,],%[^,],%[^,],",a,b,c,d);

当字符串为 ”AA,,CC,DD," sscanf 就解析不出来  好像sscanf 解析不到 字符串b 就退出了ret 返回1    后面的 字符串 c 和 d 就不解析了
问问大神 有办法 用 sscanf 解析 "AA,,CC,DD," 吗

最佳答案

查看完整内容[请看2#楼]

char *my_strnchr(char *string,u8 ch,u8 num)//从1开始查询不到都返回0 0返回起始地址 { if (num==0) return string-1; while (*string && num) { string++; if(*string == (char)ch) num--; } if (*string == (char)ch) return((char *)string); return 0; } char a[10]={0};//必须首位赋值0 防止为空打印乱码 char b[10]={0}; char c[10]={0}; ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2021-1-7 15:14:39 | 显示全部楼层
char *my_strnchr(char *string,u8 ch,u8 num)//从1开始查询不到都返回0  0返回起始地址
{
    if (num==0)
        return string-1;
   
        while (*string && num)
        {
                string++;
                if(*string == (char)ch)
            num--;
        }

        if (*string == (char)ch)
                return((char *)string);

        return 0;
}

    char a[10]={0};//必须首位赋值0 防止为空打印乱码
    char b[10]={0};
    char c[10]={0};
    char d[10]={0};
    char target[] ="AA,,CC,DD,";

    sscanf(my_strnchr(target,',',0)+1,"%[^,]",a);
    sscanf(my_strnchr(target,',',1)+1,"%[^,]",b);
    sscanf(my_strnchr(target,',',2)+1,"%[^,]",c);
    sscanf(my_strnchr(target,',',3)+1,"%[^,]",d);
    printf("%s %s %s %s\r\n",a,b,c,d);
回复

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2021-3-11
在线时间
8 小时
发表于 2021-10-15 13:39:11 | 显示全部楼层
现在我也遇到了这个问题  请问解决了吗?   怎么解决的这个问题?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2021-10-16 01:06:32 | 显示全部楼层
自己写数据处理函数吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-26 19:38

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表