简介
Tips:不要在程序中使用goto语句,它会使得程序既难理解又难修改。
goto语句的作用是从当前位置无条件跳转到同一函数内的另一条语句。
goto label;
注意事项
和switch语句类型,goto语句也不能将程序的控制权从变量的作用域之外转移到作用域之内:
// ...goto end;int ix = 10;end:// 错误: 此处的代码需要使用ix, 但是goto绕过了它的声明
跳回到变量定义之前是合法的,这时候系统将销毁该变量并重新创建它:
begin:int sz = get_size();if (sz <= 0) {goto begin; // goto语句执行后将销毁sz, 然后重新定义并初始化sz}
