c语言中怎么读取文件中的字符并更改

发布网友 发布时间:2022-04-21 07:44

我来回答

1个回答

热心网友 时间:2022-06-18 18:54

运算符优先级的问题:
while((c=fgetc(p)!=eof))
被解释成:
while(c=(fgetc(p)!=eof)),
c被赋值为(fgetc(p)!=eof)这个逻辑值了,所以不管文本里的内容是什么,都会在文件指针未指向文件结尾时打印ascii码为1的字符(因为fgetc(p)!=eof为真),也就是那个笑脸,到文件结尾时fgetc(p)!=eof为假
c
=
0才退出循环。改动很简单,加个括号防止fgetc(p)先和!=eof结合就行了:while((c=fgetc(p))!=eof)

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com