【发布时间】:2021-04-18 08:40:29
【问题描述】:
正如标题中所说,我想将文本的每一部分保存在我的结构中包含的字符数组中,称为Identity,代码如下:
#include <stdio.h>
#include <string.h>
char strExample[]="Andrew;Smith;18;Wall Street;New York;10011;USA";
typedef struct Identity{
char firstName[20];
char lastName[20];
char age[5];
char street[64];
char city[20];
char postCode[8];
char country[20];
}Identity;
void textParse()
{
char *ptr = strExample;
char *token;
int i = 0;
while ((token= strsep(&ptr,";")) != NULL)
{
printf("%s\n",token);
}
}
int main(int argc, char **argv) {
textParse();
return 0;
}
拆分效果很好,但我不知道如何将每个标记保存在 Identity 结构中。我该怎么做?
【问题讨论】:
-
请更改措辞:您没有在 typedef 中保存字符串;您将它们保存在结构中包含的字符数组中。 typedef 只是用来命名孩子。你也不能在 type 中存储任何东西;您可以将内容存储在变量中。
-
进行长度检查以验证每个标记是否适合每个目标字符数组,然后将其存储在那里。
-
是的,我正在考虑做类似的事情,但是你如何用循环来做呢?