我有一个命令行,用户输入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键不会被注册。
答案 0 :(得分:1)
你看过&lt; curses.h&gt; 看看 getch()函数有什么作用? 请参阅:http://pubs.opengroup.org/onlinepubs/7908799/xcurses/curses.h.html 它适用于Mac ...