我读了一个char类型的变量,之后我打印出ascii代码。为什么我按下输入什么都没有?

时间:2016-08-01 10:49:28

标签: c++

如果用户按下"输入"我想要的就是在屏幕上打印一些东西。关键。这是我的任务:一次显示一行文件,等待用户在每行后按“Enter”键,这是我的代码片段:

vector<string> v;
ifstream in("in.txt");
string line;
char actiune;

while (getline(in, line)) {
    cin >> actiune;
    if (int(actiune) == int('\n')) {
        cout << line << endl;
    }
    else {
        while (int(actiune) != int('\n')) {
            cin >> actiune;
        }
        cout << line << endl;
    }

}

试图解决这个问题我发现了另一个问题。 LEts说我们有一个变量,我们正在阅读它,之后我们想要打印它的ascii代码。为什么在按下输入代码时什么都不做,并等待用户按另一个键?

1 个答案:

答案 0 :(得分:1)

getline将忽略\n,因为它会一直读到\n,然后移到其他行

您可以使用while (in.get(line) /*change variable name...*/)。这将只读取char,这样您就可以检查它是否为\n