相关疑难解决方法(0)

案例中是否有三点(案例'0'...'9':)有效的C语言切换语法?

我在DRBD软件的开源代码文件中注意到这一点(user/drbdtool_common.c)

const char* shell_escape(const char* s)
{
    /* ugly static buffer. so what. */
    static char buffer[1024];
    char *c = buffer;

    if (s == NULL)
        return s;

    while (*s) {
        if (buffer + sizeof(buffer) < c+2)
            break;

        switch(*s) {
        /* set of 'clean' characters */
        case '%': case '+': case '-': case '.': case '/':
        case '0' ... '9':
        case ':': case '=': case '@':
        case 'A' ... 'Z':
        case '_':
        case 'a' ... 'z':
            break; …
Run Code Online (Sandbox Code Playgroud)

c switch-statement

13
推荐指数
2
解决办法
6037
查看次数

如何在C中的switch case语句中使用范围?

我的逻辑是:

if number is between 1 to 10, execute first case statement
if number is from 20 to 30, execute second case statement
Run Code Online (Sandbox Code Playgroud)

有没有下面的解决方案?

case '1' ... '10':
case '20' ... '30':
Run Code Online (Sandbox Code Playgroud)

c switch-statement

11
推荐指数
3
解决办法
3万
查看次数

切换案例的这种语法在C中意味着什么?

我看到了一些像这样的c代码:int check = 10:

switch(check) {
            case 1...9: printf("It is 2 to 9");break;
            case 10: printf("It is 10");break;
} 
Run Code Online (Sandbox Code Playgroud)

case 1...9:是什么意思?它是标准的吗?

c switch-statement

6
推荐指数
1
解决办法
646
查看次数

如何在c的case语句中使用省略号?

CASE expr_no_commas ELLIPSIS expr_no_commas ':'
Run Code Online (Sandbox Code Playgroud)

我在c的语法规则中看到了这样的规则,但是当我尝试重现它时:

int test(float i)
{
switch(i)
{
  case 1.3:
    printf("hi");
}
}
Run Code Online (Sandbox Code Playgroud)

它失败...

c switch-statement

4
推荐指数
3
解决办法
2580
查看次数

在Switch case中默认

以下是我需要优化和计划的代码,以便切换到最佳状态.但我可以比较一下.所以我计划将comaparision(len> 3)作为默认情况.

如果我将比较部分(len> 3)作为默认情况并在swith中添加默认值,它会更快吗?

或者我如何将下面的代码作为switch语句?

            if ( len > 3 ) {
                    which will happen more often;
            }               
            else if ( len == 3 ) {
                    next case which may occur often;
            } else if ( len == 2 ) {        
                   the next priority case;
            } else {
                    and this case occurs rarely;
            }
Run Code Online (Sandbox Code Playgroud)

c c++ if-statement switch-statement

4
推荐指数
1
解决办法
3962
查看次数

标签 统计

c ×5

switch-statement ×5

c++ ×1

if-statement ×1