2条回答 默认 最新
关注
一、代码示例尝试
给出一段代码示例,可以自己在 IDE 上尝试试试看。
#include<stdio.h> #include<string.h> int main() { char ch; int n = 0; for(ch = getchar(); ch != '\n'; n++) { } printf("%d\n", n); return 0; }
二、解释
for 循环的第一个 ';' 前面的语句是初始化语句,只会执行一次,也就是执行完,发现不是换行符,后面 ch 就永远不是换行符了,这就变成了一个死循环,根本不是在统计 getchar() 的字符数。
三、扩展阅读
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报