c - 在c中拆分字符串

标签 c

我有一个文件,其中每一行如下所示:

cc ssssssss,n

前两个 'c' 是单个字符,可能是空格,然后是空格,然后 's' 是一个 8 或 9 个字符长的字符串,然后是一个逗号,然后是一个整数。

我真的是 c 的新手,我正在尝试弄清楚如何将它放入每行 4 个单独的变量中(前两个字符、字符串和数字中的每一个)

有什么建议吗?我看过 fscanf 和 strtok,但我不确定如何让它们为此工作。

谢谢。

最佳答案

我假设这是一个 C 问题,正如问题所暗示的那样,而不是标签所暗示的 C++。

  1. 读入整行。

  2. 使用 strchr找到逗号。

  3. 对前两个字符做任何你想做的事。

  4. 将逗号换成零,标记字符串的结尾。

  5. 从第四个字符开始调用 strcpy 以提取 sssssss 部分。

  6. 在逗号后面的一个字符上调用 atoi 以提取整数。

关于c - 在c中拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15152744/

相关文章:

c - 在 C 中不使用 openSSL 进行类似于 BN_hex2bn + BN_bn2bin 的转换

C:如果 a[i] 等价于 *(a+i)。 a[j][i] 等价于什么?

c - Atmega8中断不起作用

c - Matlab Coder 数组大小限制

c - 为什么 Xcode 无法在我的 Macbook Pro 上运行?

c - 我的 C 代码中的逻辑错误

c - 从源代码构建 libjepeg-turbo 不会构建库 libturbojpeg.so*

c - 文件指针导致核心转储。可能是一些愚蠢的事情

c - 在c中连续跳出两个循环

指针取消引用符号 * 可以称为 "many"吗?