如题,之前我是学free pascal考NOIP的,现在从头学C++
fp是有我说的那种输入方式的,while not eoln 和 while not eof 这种语句来实现的,那么请问C++有没有类似的实现方式呢
我尝试用
{
int n;
char a;
while (getchar()!='\n')
{
n=getchar();
}
cout<<n<
来实现,但是发现并不奏效
我输入单个字符再按回车的时候并不会结束循环,后来我发现我输入偶数个字符的时候再按回车会结束循环,但是奇数个不会,这又是为什么呢?
例如 我输入1,不会结束循环
但是我输入12 就会结束循环
输入123 不结束,输入1234 结束 以此类推
这是什么原理呢?
希望能被解答
while((n=getchar())!='\n')
你一次循环调用了两次getchar啦
while (1)
{
n=getchar();
if (n == '\n') break;
...
}
使用if语句和break就可以啦
不知道你这个问题是否已经解决, 如果还没有解决的话: