首页 > 其他 > 详细

ISO/IEC 9899:2011 条款6.8.6——跳转语句

时间:2016-01-09 00:58:42      阅读:180      评论:0      收藏:0      [点我收藏+]

6.8.6 跳转语句

语法

1、jump-statement:

        goto    identifier    ;

        continue    ;

        break    ;

        return    expressionopt    ;

语义

2、一条跳转语句引发一个无条件跳转到另一个地方。

 

6.8.6.1 goto语句

约束

1、一条goto语句中的标识符应该命名一个标签,该标签坐落于当前封闭函数的某个地方。一条goto语句不应该从一个具有可变修改类型的标识符作用域的外部跳转到该标识符作用域的内部。

语义

2、一条goto语句引发一次无条件跳转到在封闭函数中由命名标签作为前缀的语句处。

3、例1 有时为了图方便而跳入到一组复杂语句集的中间。以下概述呈现了一个基于三个假定问题的可能解决方法:

(1)通用的初始化代码仅访问对当前函数可见的对象。

(2)通用初始化代码太大,以至于难以重复。

(3)要判定下一步操作的代码在循环的开头。(为了允许它来通过continue语句而到达,比如)

/* ... *
goto first_time;
for( ; ;) {
    // 判定下一步操作
    /* ... */
    if( 需要重新初始化) {
        // 仅仅重新初始化代码
        /* ... */
    first_time:
        // 通用初始化代码
        /* ... */
        continue;
    }
    // 处理其它操作
    /* ... */
}

4、例2

ISO/IEC 9899:2011 条款6.8.6——跳转语句

原文:http://www.cnblogs.com/zenny-chen/p/5115206.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!