NSFileHandle 和 scanf 不回显 Xcode 4.5 中的输入
-
11-12-2019 - |
题
我成功使用 NSFileHandle 读取键盘输入:
NSFileHandle * keyboard = [NSFileHandle fileHandleWithStandardInput];
NSData *inputData = [keyboard availableData];
NSString * input =[[NSString alloc] initWithData:inputData encoding:NSUTF8StringEncoding];
当用户键入时,只有输入的第一个字符会在屏幕上回显。例如,如果我输入 hello
, , 仅有的 h
屏幕上回响着。然而,完整的输入被读入字符串中。
正确的回显行为适用于 Xcode 4.2。我目前使用的是 Xcode 4.5。
更新
放弃 NSFileHandle
现在,我尝试使用 scanf
. 。然而,存在同样的回声问题。 scanf
代码:
char word[4];
scanf("%s",word);
NSString * input = [[NSString alloc] initWithBytes:word length:4 encoding:NSUTF8StringEncoding];
解决方案
这是 Xcode 4.5 中的一个错误。当控制台刷新时,所有回显的输入都会显示出来。
不隶属于 StackOverflow