gpt4 book ai didi

c - 当我使用 fgetc 时尾随\n

转载 作者:行者123 更新时间:2023-11-30 17:37:07 25 4
gpt4 key购买 nike

我编写了一个简单的函数来读取文本文档并按原样打印它。但是我在输出中看到一些尾随\n。我无法找出原因。

void read_file(FILE* fp , char* s)
{
int i=0;
char c;
while( (c=fgetc(fp)) !=EOF )
{
s[i]=c;
//fseek(fp,1,SEEK_CUR);
i++;
}
printf("%d is length of file\n",i);
s[i]='\0';

printf("%s",s);
}

我的文本文档包含

I am

here

最佳答案

首先:您需要将c声明为intfgetc 的返回值为 int,因为 char 通常不足以容纳 EOF

在输出中获取尾随换行符的原因要么是因为 c 不是 int,要么是因为您的输入文件包含尾随换行符。

关于c - 当我使用 fgetc 时尾随\n,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22504425/

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