注册 登录
编程论坛 C++教室

c++中怎么判断当遇到换行符时 循环结束

zheng3912930 发布于 2012-05-16 11:31, 8930 次点击
#include<iostream>
using namespace std;
int main()
{
    char c1;
   cin>>c1;
    while(true)
    {
        if(c1=='\n')
        break;
        cin>>c1;
    }
    return 0;
}
为什么按回车不跳出循环,怎么改呢!
c语言为什么可以!
2 回复
#2
唯我独魔2012-05-16 13:22
将cin >> c1改成cin.get(c1),因为cin >> 会自动跳过空白符
#3
rjsp2012-05-17 08:13
2楼说得对,或者用 noskipws 让它不跳过空白符

程序代码:
#include <iostream>
using namespace std;

int main()
{
    for( char c; cin>>noskipws>>c && c!='\n'; );
    return 0;
}

1