我刚开始使用C ++而且我遇到了错误。它告诉我,我有一个"否则"没有先前的"如果",但我这样做。我检查了代码的情况,它看起来基本上就像我从中学习的网站上的例子,它只是在所有的couts之后有不同的句子,所以我不知道什么是错的。任何帮助将不胜感激。
int main()
{
int iOud;
cout<<"Type in your age: ";
cin >> iOud; //"a variable for the person's age
cin.ignore();
if (iOud < 20 );{
cout<< "A message\n";
}
else if (iOud > 40 ) {
cout << "A message\n";
}
else {
cout << "A message\n";
}
cin.get();
}
答案 0 :(得分:8)
从;
if (iOud < 20 );{
if (iOud < 20 );
是一个有效的语句,因此编译器在找到无效的} else if
之前不会发出错误。这就是为什么编译器错误在第一次检查时出现奇怪的原因。
答案 1 :(得分:5)
;
后if (iOud < 20)
终止if
语句。
放弃它,你就没事了
答案 2 :(得分:4)
您使用if(...)
结束了;
句子,因此它根本无法识别它,只看到else if
并删除错误。将;
放在if (iOud < 20 ); {
。
如果您使用多个Switch/Case
句子,我可以推荐使用if
,但在评论中提及 Sean ,这不适用于您比较数值范围的例子。