gpt4 book ai didi

C: 使用 fwrite 将 char 写入不同的行

转载 作者:IT王子 更新时间:2023-10-29 00:53:22 24 4
gpt4 key购买 nike

我必须按如下方式写入文件:

 A
B
C
D
...

字母表中的每个字符都需要写入文件中的不同行。我有以下程序,一个接一个地写字符:

 FILE* fp;
fp = fopen("file1","a+");
int i;
char ch= 'A';
for(i=0; i<26; i++){
fwrite(&ch, sizeof(char), 1, fp);
ch++;
}
fclose(fp);

我应该如何改变上面的程序来将每个字符写入一个新行。 (我尝试在每个字符后写“\n”,但是当我使用 VI 编辑器或 ghex 工具查看文件时,我看到了额外的字符;我正在寻找一种方法,以便 vi 编辑器将完全如上所示显示文件)。

我在第一次 fwrite 后尝试使用以下内容:

 fwrite("\n", sizeof("\n"), 1, fp);

谢谢。

最佳答案

fwrite("\n", sizeof("\n"), 1, fp);

应该是

fwrite("\n", sizeof(char), 1, fp);

否则,您正在编写一个额外的 \0,它是 "\n" 字符串常量 (sizeof("\n ") 是两个,不是一个)。

关于C: 使用 fwrite 将 char 写入不同的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10256116/

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