使用while((c=getchar()) != '/n')
把char c 写到外面
char c = '\0';
for(;(c=getchar())!='\n';)
{
printf("%c", c);
}
我觉得你的问题应该是判断条件写错了,应该是反斜杠n而不是斜杠n,反斜杠n电脑会自动处理为一个char大小的值,如果将斜杠n看作一个字符的话,可能他的值会超过-128到127这个范围,问题应该是这个,这个就导致你的循环无法结束,所以系统报错,修改的话改成反斜杠n就行了,平时用的时候不建议这么用,因为你再for循环里面定义的char是一个临时变量,在循环结束之后就会被释放,具体操作的话,你可以在你的for循环之后再写个printf 输出一下c的值,你就会发现问题了。
把'/n'
改成'\n'
,这样写是没有问题的。
#include <stdio.h>
int main()
{
for (char c; (c = getchar()) != '\n';)
printf("%c", c);
return 0;
}