我对 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 的任何解决方案吗?
Ctrl + D
意味着EOF,但它只适用于Linux,如果你想在windows或cmd中将EOF发送到你的程序,你需要使用Ctrl+Z
,你可以从这个问题中看到更多Ctrl+D不会阻止应用程序在命令窗口中执行
并Ctrl+Z
使用 code::block IDE 在我的 Windows 中正常工作
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句