C++ C+中的EOF键是什么+;
我使用的是Windows7Ultimate。我是C++新手。下面是我对switch语句的练习C++ C+中的EOF键是什么+;,c++,io,C++,Io,我使用的是Windows7Ultimate。我是C++新手。下面是我对switch语句的练习 void GradeBook::inputGrades() { int grade; cout << "Enter Grade: " << endl; while((grade=cin.get()) != EOF) { switch(grade) { case 'A':
void GradeBook::inputGrades()
{
int grade;
cout << "Enter Grade: " << endl;
while((grade=cin.get()) != EOF)
{
switch(grade)
{
case 'A':
case 'a':
aCount++;
break;
case 'B':
case 'b':
bCount++;
break;
case 'C':
case'c':
cCount++;
break;
case 'd':
case 'D':
dCount++;
break;
case 'F':
case 'f':
fCount++;
break;
case '\n':
case ' ':
case '\t':
break;
default:
cout << "Incorrect data. Re Enter" << endl;
break;
}
}
}
void成绩册::inputGrades()
{
国际等级;
coutcin.get()的级别非常低。代码应该使用更高级别的接口。它应该一次读取一个字符,所以这样编写:
char grade;
while (cin >> grade)
流提取器将在文件末尾失败,这将使while循环终止。cin.get()的级别非常低。代码应使用更高级别的接口。它应该一次读取一个字符,因此以这种方式编写:
char grade;
while (cin >> grade)
流提取器将在文件末尾失败,这将使while循环终止。在Windows平台上,一个is Ctrl+Z后跟一个换行符
对于Netbeans中的控制台,这可能是相同的。在Windows平台上,一个是Ctrl+Z,后跟一个换行符
大概对于Netbeans中的控制台也是如此。我想你的问题不是真的关于EOF,而是关于它:Control+Z或F6。通常需要自己在一行上输入,所以基本上enter后跟Control+Z或F6。嗯……仍然不起作用。你确定它在Netbeans中起作用吗?或者,ch不是更好吗将参数测试设置为-1?因此,当用户输入-1时,它将中断。我认为你的问题实际上不是关于EOF,而是关于它:Control+Z或F6。通常需要自己在一行上输入,所以基本上是enter,然后是Control+Z或F6。嗯……仍然不工作。你确定它在netbeans中工作吗?或者,使用c不是更好将参数测试更改为-1?因此,当用户输入-1时,它将中断。这不会改变任何东西。这里的问题是如何“键入”输入的结尾。这是一个有用的答案,但它是错误的答案。我不确定是应该向上投票还是向下投票。这不会改变任何东西。这里的问题是如何“键入”输入的结尾。这是一个有用的答案,但它是错误的答案。我不确定我应该向上投票还是向下投票。