gpt4 book ai didi

c - 知道为什么我的打印函数会打印然后永远运行吗?

转载 作者:行者123 更新时间:2023-11-30 15:21:41 25 4
gpt4 key购买 nike

知道为什么我的打印函数会打印然后在崩溃之前永远运行吗?

void readDataFile(){

FILE* fp = fopen("text.txt","r");
int t=0;
while(fp !=EOF){
text[t] = fgetc(fp);
printf("%c",text[t]);
t++;
}

fclose(fp);
}

最佳答案

检查编译器警告(例如:gcc -Wall file.c)。您应该在“while(fp !=EOF){”行上收到一条警告,表明您正在将指针与整数进行比较。如果将 while 语句重写为:

while ((text[t] = fgetc(fp)) != EOF){
printf("%c",text[t]);
t++;
}

请注意,您需要在 fgetc 检索到的字符中查找 EOF,而不是在文件指针 fp 中。

关于c - 知道为什么我的打印函数会打印然后永远运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29502152/

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