クラッシュを誘発するために次のコードを書きました (CrashReporter でいくつかの問題をテストしていました)。
int *nullp = NULL;
int val = *nullp;
NSLog(@"Hello world %d", val);
真新しいプロジェクト(アプリのデリゲートに入れましたapplicationDidFinishLaunching:
)では、予想どおりにクラッシュします。しかし、既存のプロジェクトの 1 つに追加すると、クラッシュしません! 実際、「Hello world 0」をシステム ログに出力することになります。
これは私には意味がありません。null 逆参照がクラッシュを引き起こさないのはなぜですか?