【发布时间】:2014-09-02 00:48:21
【问题描述】:
我有一个文本文件,我正在将名字和姓氏读入一个大小为 20 的字符数组中。我正在创建一个包含“人物”信息的结构数组。 文本文件如下所示:
John Robbins
Teresa Jones
我的结构是这样定义的:
struct people {
char name[20];
};
人员结构声明:
struct people *persons[2];
在声明一个新结构后,我使用以下代码读取名称:
for(i=0; i<2; i++)
{
fscanf(dp, "%[^\n]s", &persons[i].name[20]);
}
但是,一旦我将名称输出到控制台,我会收到以下信息:
hn Robbins
sa Jones
我进行了广泛的研究,但找不到解决此问题的方法。有人遇到过这个问题吗?
【问题讨论】:
-
请显示 person 数组的声明。
-
刚刚添加了“Persons”结构体的声明
-
你在声明中将 Persons 大写但在使用时没有大写是否只是一个错字?
-
是的,这只是一个错字
-
您的代码甚至无法编译。 people[i] 不是结构,而是指向结构的指针。