C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c:switch语句在close括号之前缺少分号大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_502_6@ 为了以后的读者和我自己的理智,我希望绝对清楚地表明,没有认情况的switch语句(由于所有情况都被覆盖)或顺序if-elseif-else与最后的else应该不要做任何事情,不得省略,并包括对该效果评论(见例).

但是,每当我在switch语句中包含认大小写并将其保留为空时,我必须在认大小写或编译器错误中加@L_489_9@分号:“Line [switch switch of line statement of line statement]`missing’;’在’}’之前发生.为什么?!

例:生成编译器错误

switch(direction) {
    case MOVE_UP:
    //...
    break;
    case MOVE_RIGHT:
    //...
    break;
    case MOVE_DOWN:
    //...
    break;
    case MOVE_LEFT:
    //...
    break;
    default:
        /* DO NOTHING */
}

例:不会产生编译器错误

switch(direction) {
    case MOVE_UP:
    //...
    break;
    case MOVE_RIGHT:
    //...
    break;
    case MOVE_DOWN:
    //...
    break;
    case MOVE_LEFT:
    //...
    break;
    default:
        /* DO NOTHING */;
}

解决方法

C 03中的6.1 / 1给出了带标签的语句的语法:

labeled-statement:
    identifier : statement
    case constant-expression : statement
    default : statement

C 11是相同的,除了您可以在标签之前具有属性.

零长度的标记序列不是C语句,因此认情况下:它本身不是标记语句.

也就是说,我不知道为什么标签语句的语法不允许认的原因是什么:statementopt.如果它确实存在,那么如果你写了认值就会出现语法歧义:case 1:break;,无论是1还是break;是属于default的语句:,或者default:是否没有自己的语句,但后面紧跟@L_489_9@语句.毫无疑问它意味着什么,但也许它被认为会弄乱人们的解析器.

大佬总结

以上是大佬教程为你收集整理的c:switch语句在close括号之前缺少分号全部内容,希望文章能够帮你解决c:switch语句在close括号之前缺少分号所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。