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