使用scanf()作首字母

时间:2012-04-07 23:29:23

标签: objective-c scanf

我有一个命令行,用户输入1个字母,当用户键入1个以上的字母时,程序将输入第一个字母。我该如何做到这一点,因为我正在做的事似乎不适合我:

    char ans, *d;

    Sequence *seq = [[Sequence alloc] init];

    while (k < 10) {
        k++;
        [seq generate];
        printf("%i. %s\n\n>>> ", k, [seq.full cStringUsingEncoding:NSUTF8StringEncoding]);
        scanf("%c%s", &ans, &d);

        NSString *input = [NSString stringWithFormat:@"%c", ans];
        if (input == seq.answer) {
            correct ++;
        }
    }

编辑:我只想澄清'd'变量用作虚拟变量,因此Enter键不会被注册。

1 个答案:

答案 0 :(得分:1)

你看过&lt; curses.h&gt; 看看 getch()函数有什么作用? 请参阅:http://pubs.opengroup.org/onlinepubs/7908799/xcurses/curses.h.html 它适用于Mac ...