环境是vmware上ubuntu20.04(在18版本测试出来结果是一样的),执行完会输出text.txt的文本.
现在的发现是在ch=getc(fp)下面加一行printf("x");输出正常,再在main方法第一行下同样输出一行文本,输出又异常了

请问这段代码在ubuntu下为什么会有输出
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 浪客 2021-07-13 23:33关注
test里给node分配内存,并没有初始化,因此node->cc的值是不确定的,printf的结果也就是未知的了。
read里也只是读取了1个字符,要全部读取,需要用到循环do { ch = fgetc(fp); putch(ch); } while (ch != EOF);
通过循环把文件里的内容读取并显示出来。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报