找回密码
 立即注册
搜索
热搜: 活动 通知
查看: 77|回复: 0

检测点10-14

[复制链接]

620

主题

336

回帖

1057

积分

管理员

积分
1057
发表于 2026-3-8 21:57:05 | 显示全部楼层 |阅读模式
检测点10-14

1.在以下声明中,(AC)是合法的。
A.enum Color {Red, Green, Blue};
B.enum class Color {Red, Green, Blue};
C.enum Color : int {Red, Green, Blue};
D.以上都合法

2.以下switch语句合法吗?为什么?不合法的地方如何修改?
void f (int n)
{
    switch (n)
    {
        printf ("哈罗!\n");
        case 2: int i = 6;
                 printf ("%d\n", i);
    }
}
答:不合法。case标号语句由case标号和后面的语句组成,但int i = 6;是声明而不是语句。修改方法之一就是添加空语句:
void f (int n)
{
    switch (n)
    {
        printf ("哈罗!\n");
        case 2: ;
                int i = 6;
                printf ("%d\n", i);
    }
}
以上,printf语句并不会被执行,但它的存在没有语法问题。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|鼠侠网 ( 吉ICP备19001332号 )

GMT+8, 2026-3-30 16:13 , Processed in 0.265831 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表