gpt4 book ai didi

c - C中如何逐行打印出一个txt文件?

转载 作者:太空狗 更新时间:2023-10-29 17:07:37 24 4
gpt4 key购买 nike

int main()
{
FILE *infile;
FILE *infile2;
char input[255],input2[255];
int status1, status2;

infile = fopen("test.txt", "r");
infile2 = fopen("test2.txt", "r");
if(infile == NULL)
{
printf("Can not open file 1!\n");
}
else if(infile2 == NULL)
{
printf("Can not open file 2!\n");
}
else
{
do
{
status1 = fscanf(infile, "%s", &input);
status2 = fscanf(infile2, "%s", &input2);

printf("File 1: %s\n File 2: %s\n", input, input2);
}while(status1 != -1 || status2 != -1);
}
fclose(infile);
fclose(infile2);

return 0;
}

我的输出看起来像这样:

Output

我想一行打印出文件 1,而不是逐字打印。 file2 也是如此。我对 C 有点陌生,所以我被卡住了。

最佳答案

如果您想阅读整行,请使用 fgets函数而不是 fscanf:

char *status1, *status2;
.
.
.
do {
status1 = fgets(input, sizeof(input), infile);
status2 = fgets(input2, sizeof(input2), infile2);
printf("File 1: %s File 2: %s", input, input2);
} while (status1 || status2);

请注意 printf 如何不再使用 \n。这是因为 fgets 将文件中的 \n 保存在输入字符串中。

关于c - C中如何逐行打印出一个txt文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35197575/

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