この一見些細なコードは教科書からコピーされたものですが、Xcode が scanf() で入力を取得した後、プログラムはエラー コード -1 で終了し、「接続が失われました」と表示されます。
#import <Foundation/Foundation.h>
int main (int argc, char *argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc]init];
int number;
NSLog(@"Type in your number: ");
scanf("%i", &number);
if (number < 0)
number = -number;
NSLog(@"The absolute value is: %i", number);
[pool drain];
return 0;
}
アップデート
OSを最初から再インストールしました。10.8.5 と Xcode 5 — まだ同じ問題です。Xcode 4.6.3 をインストールしました。同じ問題で、エラー メッセージが表示されず、プログラムが終了します。
また、新しい空のプロジェクトにまったく新しいプログラムを書きました。この問題は、scanf 関数が呼び出されたときにのみ発生します。