C++ 通过char一个数组,用cin.get输入后程序直接结束

是这样,我定义了两个char类型的数组,但是输入第一个后程序直接结束了,没有出现后面的指令,这是什么原因?
图片说明

因为你在第一次输入后,输入流中有个换行,那cin.get(num2, 100);首先抽取到的是换行,所以程序就认为输入结束了。

两种解决方案:

1.: 加一个cin.get();

cin.get(num1, 100);
cin.get();
cout << "输入第二个数" << endl;

2: 把cin.get()换成cin.getline(); 因为getline是在输入完后丢弃换行符的。

cin.getline(num1, 100);
cin.getline(num2, 100);

在一个输入指令后加getchar()

输入第一个指令后按回车,回车直接被NUM2接收,在一个输入指令后加getchar()就OK了