質問

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のバグです。コンソールが更新されると、エコー入力がすべて表示されます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top