c - 如何读取字符串格式和分隔字段:value in ( C )

标签 c

我有一个字符串格式示例:

1)

   DATASET:students name:STRING sid:STRING graduated:BOOLEAN year:INTEGER gpa:INTEGER

2)

 typedef  struct param{
          char *Name;
          char *Value;
          struct param *next;
          }params;

我们必须从字符串中获取所有字段名:值并将其添加到链表或结构数组中。

最佳答案

  1. 使用 fgets() 读取整行
  2. 使用 strtok() 使用空格作为分隔符来换行,并将相应的字符串存储在数组中。
  3. 然后使用 : 作为分隔符,使用 strtok() 逐一分解数组的内容。 请注意,strtok() 将修改您传递的字符串。
  4. 现在您可以将数据从数组复制到各自的结构字段

关于c - 如何读取字符串格式和分隔字段:value in ( C ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27740317/

相关文章:

c - 如何同时返回 bool 和 double?

c - 在 RPC 代码中获取 memcheck 错误

c - C 中的质数

c - 我的字符串连接每次结果都会加倍,为什么?

c - 开放地址哈希表中的 'vacated'只能存储一个变量吗?

c - 通过创建内核例程打印/proc/slabinfo

c - 无效使用灵活数组 - 灵活结构数组作为另一个结构的成员

c - 如何修复创建缓冲区并将其直接写入磁盘(WriteFile)

c - C中的字符串反转

c++ - 在 QPixmap 中写入文本