简单的C ++错误,"否则没有先前的"

时间:2016-01-05 14:40:05

标签: c++

我刚开始使用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();
}

3 个答案:

答案 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 ,这不适用于您比较数值范围的例子。