gpt4 book ai didi

c - 我如何在 C 文件的开头 fprintf 字符串?

转载 作者:太空宇宙 更新时间:2023-11-04 02:05:09 24 4
gpt4 key购买 nike

我编写了这个 C 代码段以使用 for 循环将“n”个单词读入文件。应该在我每次使用 fseek 到达的文件开头插入一个新词。

问题:只有最后扫描的词被放入文件,而前面的 n-1 个词没有出现在文件中。没有显示错误和消息“完成!”正确打印'n'次。我做错了什么吗?

printf("No. OF words: ");
scanf("%d",&n);

for(i=0;i<n;i++)
{
printf("Enter word: ");
scanf("%s",word);
fprintf(fp,"%s \n",word);
printf("done!\n\n");
fseek( fp, 0, SEEK_SET );

}

fclose(fp);

最佳答案

无法在文件开头追加。您当前的代码正在覆盖文件之前的内容。

你基本上有两个选择:

将所有单词存储在内存中,并按所需顺序打印到文件

读取整个文件,fseek到开头,打印新词,然后打印其余内容。

关于c - 我如何在 C 文件的开头 fprintf 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21603550/

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