切换语句中的Char类型

时间:2012-05-18 15:37:55

标签: objective-c macos char switch-statement

我正在查看我之前的一个实验,其中您的输入是一个字符,输出将显示“二进制代码”,但出现了问题,我似乎无法解决问题的开始。

这是代码:

char myNothing = 0;

        scanf("%c", myNothing);
        switch (myNothing)
        {
            case 'a':
                NSLog(@"01100001");
                break;
            case 'b':
                NSLog(@"01100010");
                break;
            case 'c':
                NSLog(@"01100011");
                break;
            case 'd':
                NSLog(@"01100100");
                break;
            default:
                NSLog(@"Unknow character");
                break;
        }

        return 0;

这是任何字符插入输入时的输出:

Run Command: line 1:   607 Segmentation fault: 11  ./"$2" "${@:3}"

1 个答案:

答案 0 :(得分:8)

变化:

    scanf("%c", myNothing);

为:

    scanf("%c", &myNothing);

或者更好:

    myNothing = getchar();

另外,请确保已启用编译器警告。