微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有办法在 C 中一次获得一个字符?

如何解决有没有办法在 C 中一次获得一个字符?

我有一个这种类型的字符串: %d.'\0' 我想解析它。例如,如果有这个字符串 12.'\0' 我想逐个字符地读取字符串(在点之前)并在整数变量中添加数字 12

编辑:所以我有两个进程通过消息队列进行通信。客户端发送如下消息:12.5,我必须将 12 与 5 分开。我不想输入。我在字符串变量中有字符串 (12.5) 并且需要解析它,因为我想要某个 int 变量中的 12 和另一个中的 5。

解决方法

我会使用函数 strtok 这就像其他语言中的函数拆分 和用于将字符串更改为 int 的函数 atoi

char e[] = "12.5";
char * num = strtok(e,".");
// x is the first number 
int x = atoi(num);
printf("%d\n",x);
// y is the number after the dot
num = strtok(NULL,".");
int y = atoi(num);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。