“Goto”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
 
 
第1行: 第1行:
 +
*'''goto'''
 +
程序将会从程序中已有的标记点开始运行
 +
 +
*'''语法'''
 +
<pre style="color:green">
 +
 +
label:
 +
goto label;    //从label处开始运行
 +
</pre>
 +
 +
*'''提示'''
 +
 +
不要在C语言中使用goto编程,某些C编程作者认为goto语句永远是不必要的,但用得好,它可以简化某些特定的程序。许多程序员不同意使用goto的原因是, ​​通过毫无节制地使用goto语句,很容易创建一个程序,这种程序拥有不确定的运行流程,因而无法进行调试。
 +
 +
的确在有的实例中goto语句可以派上用场,并简化代码。例如在一定的条件用if语句来跳出高度嵌入的for循环。
 +
 +
*'''例子'''
 +
<pre style="color:green">
 +
 +
for(byte r = 0; r < 255; r++){
 +
  for(byte g = 255; g > -1; g--){
 +
    for(byte b = 0; b < 255; b++){
 +
      if (analogRead(0) > 250){
 +
        goto bailout;
 +
      }
 +
      //更多的语句...
 +
    }
 +
  }
 +
}
 +
bailout:
 +
</pre>
 +
 
[[https://www.microduino.cn/wiki/index.php/Arduino_%E8%AF%AD%E6%B3%95%E6%89%8B%E5%86%8C/zh 返回Arduino语法手册]]
 
[[https://www.microduino.cn/wiki/index.php/Arduino_%E8%AF%AD%E6%B3%95%E6%89%8B%E5%86%8C/zh 返回Arduino语法手册]]

2016年3月28日 (一) 07:35的最新版本

  • goto

程序将会从程序中已有的标记点开始运行

  • 语法

label:
goto label;    //从label处开始运行
  • 提示

不要在C语言中使用goto编程,某些C编程作者认为goto语句永远是不必要的,但用得好,它可以简化某些特定的程序。许多程序员不同意使用goto的原因是, ​​通过毫无节制地使用goto语句,很容易创建一个程序,这种程序拥有不确定的运行流程,因而无法进行调试。

的确在有的实例中goto语句可以派上用场,并简化代码。例如在一定的条件用if语句来跳出高度嵌入的for循环。

  • 例子

for(byte r = 0; r < 255; r++){
  for(byte g = 255; g > -1; g--){
    for(byte b = 0; b < 255; b++){
      if (analogRead(0) > 250){ 
        goto bailout;
      }
      //更多的语句...
    }
  }
}
bailout:

[返回Arduino语法手册]