我对C++相当陌生,在这个简单的代码上遇到了麻烦:
#include <iostream>
using namespace std;
int main() {
int NumberOfNonBlanks = 0;
int NumberOfUpperCase = 0;
char c;
while (cin >> c) {
++NumberOfNonBlanks;
if ((c>='A' && (c <= 'Z'))) {
++NumberOfUpperCase;
}
}
cout << "Nonblank characters : " << NumberOfNonBlanks << endl
<< "Uppercase characters : " << NumberOfUpperCase << endl;
}
我的操作系统是Windows,Ctrl+D似乎退出循环(Ctrl+Z什么都不做),但问题是它也结束了整个程序。因此,我在代码中的最后一行没有做任何事情。。。例如,如果我输入以下内容:
BLUE
然后按Ctrl+D,程序立即结束,返回值为0。
如果有任何帮助,我们将不胜感激。谢谢
-------------编辑-----------------
有一些论点认为,ctrl+z目前并不表示CLion(在windows上操作)的EOF。在这种情况下,有人知道CLion的解决方案吗?