gpt4 book ai didi

c - 将数据存储到一个充满指针的结构中

转载 作者:太空宇宙 更新时间:2023-11-04 01:36:33 25 4
gpt4 key购买 nike

我有一个程序正在读取文件,但没有保存到结构中。读取数据后,应将其保存在结构中,以便程序以后能够使用这些数据。我有很长一段时间想弄清楚如何完成这项工作。

结构

typedef struct friends_contact {
char *First_Name;
char *Last_Name;
char *home_phone;
char *cell_phone;
} fr;

读取文件

void ReadFile(fr *friends, int *counter, char buffer[], FILE *read) {
fseek(read, 0, SEEK_SET);
while (fscanf(read, "%s", buffer) != EOF) {
friends[*counter].First_Name = malloc(BUFFSIZE * strlen(buffer));
strcpy(friends[*counter].First_Name, buffer);

}

}

可以根据需要提供更多信息。我只是想弄清楚为什么信息没有保存在结构中,以便以后可以调用它。

最佳答案

什么是“ friend ”?全局变量?
什么是“联系人”?函数中没有使用。
可以混合使用吗?

BUFFSIZE * strlen(buffer) -> 你是什么意思?你分配 strlen(buffer) BUFFSIZE 次。可能应该是 sizeof(char) * strlen(buffer) ?

我还认为你应该在操作 fscanf 之后检查“缓冲区”的长度。

关于c - 将数据存储到一个充满指针的结构中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13449397/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com