C ++:getchar()与_getch()

时间:2017-03-03 18:33:45

标签: c++ visual-studio visual-c++ input getchar

我读过getchar()实际上应优先于_getch()_getch()还需要包括conio.h]。但是,如果我使用getchar()这个示例程序......

#include <iostream>
#include <conio.h>

using namespace std;

class student {

    int id;
    int marks;

public:

    void getdata() {
        cout << "\n Enter id";
        cin >> id;
        cout << "\n Enter marks";
        cin >> marks;
    }

    void putdata() {
        cout << "\n" << id << "\t" << marks;
    }
};

int main() {

    student tom;

    tom.getdata();
    tom.putdata();

    getchar();  // vs. _getch();
    return 0;
}

..然后使用getchar()将不会等待输入字符以防止控制台窗口过早关闭,_getch()会这样做。

有谁知道这个的原因? getchar()是否应优先于_getch()

BTW,我正在使用MS Visual Studio 2015。

提前致谢并致以亲切的问候

编辑:我认为我的问题实际上并不是重复,因为我想知道不同行为的原因,这在“C ++中是否有一个像样的等待函数?”中没有得到解答。现在澄清了。

0 个答案:

没有答案