break语句在循环中不起作用

Nat*_*982 -5 c loops if-statement break

我看到一个教程,解释如何在循环中使用"break"语句,但每次我尝试使用它时,我收到编译错误说:

"break语句不在循环或开关内
                       break;"

这是我的代码:

if (finalFirstChar > 6 || finalFirstChar < 1)
{
    printf("You didn't entered a proper number! \n");
    break;
}
Run Code Online (Sandbox Code Playgroud)

Sou*_*osh 6

FWIW,if是一个条件(确切地说是选择语句),并且break在循环(迭代语句)/ switch-case语句中工作.

根据C11章节§6.8.6.3

一个break声明,应仅在或作为开关体或循环体出现.

在任何情况下,你不需要breakif声明体.

  • @ Nathan1982:你可能也会混淆`break`和`return`. (5认同)
  • @ Nathan1982因为你不需要休息.只是否定检查条件并将_rest_部分放入条件体中.简单. (2认同)