0

我有一些命令行,用户输入 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 键。

4

1 回答 1

1

您是否查看过<curses.h>以了解getch()函数的作用?
请参考: http: //pubs.opengroup.org/onlinepubs/7908799/xcurses/curses.h.html 它的Mac ...

于 2012-04-08T00:13:02.587 回答