问题补充说明:下面这个程序我想用goto跳出下面for循环,但编译时报错:error C2065: 'end' : undeclared identifier,该怎么改啊?#include
臭名昭著的goto出场了。
goto的汉义为“转到”,在计算来自机语言里,它的完整名称为:360问答“无条件跳转语句”。几乎所有高级语言都会劝你尽量不要使用它goto。因为它会破坏程序的模块性,严重降低一段程序的可读性。若是老外写的书,则比喻使用大量goto的代码:“像意大利面条”。嗯,其实北京校黑拉划胜供式的杂酱面也很缠绕……可惜没有雨春延防促吃结走向世界。
goto的用法是,首先要在代码中某处加上一个位标(也称标号),然后在代码中的需处,加上g里oto,并写让要跳转到位标。比编凯星乙起这刘目蛋秋换如你在第三行代码加一个地规候委容矿消位标:A:,然后可以在第10行写上一个gotoA,程序执行到该行时,就将跳到第三行。
加位标的方法是在一空行加上位标的名称,命名规则和变量一样,但解便罗互最后要加上一冒号“:”。
例如:
inti=1;
A:
cout<
i++;
if(i<=10)
gotoA;
......
goto虽然号称“无条件跳转”,事实上倒是有治些条件限制。主要是三条。
1、goto只能在当前的同一程序段内跳转;
2、goto可以从循环内跳转到循环外的代码,但不能从循环外的代码跳到循环内;
3、在有goto的跳转范围内,不能再使用C++允许的临时变量声明。
好了,其实笔球木显血者写程序近10年,是紧船袁孔呢苏惟一用到goto的地方就是:将一段简单的程序故意用goto写得面目全非,以期能让破解程序的人因为眼晕而放弃功击……一句老话:如果没有什么特殊理由,不酒得权束要在程序里使用goto。
可能你会觉得没有食盾给出答案,但是看了以上的东西之后,我相信你会找到出错的地方,也许你已经找着了。呵呵