goto 语句是C++中的一个控制语句,用于无条件地将程序的执行跳转到指定的标签位置。它可以用于跳出循环、跳转到函数的特定部分或者实现其他需要无条件跳转的程序逻辑。
goto 语句的一般语法如下:
goto label;
...
label:
// 代码块
在这个语法中,label 是一个标签,用于标识代码中的位置。goto 语句将程序的执行无条件地跳转到 label 标签所在的代码块处。
下面是一个示例,演示了如何使用 goto 语句:
#include
int main() {
int num;
std::cout << "Enter a positive number: ";
std::cin >> num;
if (num <= 0) {
goto error;
}
std::cout << "The number is: " << num << std::endl;
return 0;
error:
std::cout << "Error: Invalid input!" << std::endl;
return 1;
}
在这个示例中,程序首先提示用户输入一个正数。然后,通过 std::cin 读取用户输入的数字,并将其存储在变量 num 中。
接下来,使用条件语句检查 num 是否小于等于零。如果是,程序将执行 goto error; 语句,跳转到 error 标签所在的位置。在这个位置,会输出错误消息,并返回一个非零值来表示程序的错误状态。
如果输入的数字是一个正数,程序将继续执行,输出该数字。
注意,使用 goto 语句需要谨慎,因为滥用它可能导致代码不易理解、难以维护和调试。在大多数情况下,可以使用结构化的控制语句(如条件语句和循环语句)来代替 goto 语句,以提高代码的可读性和可维护性。