我正在閱讀Stephen G. Kochan編寫的第六版「Objective-C編程」一書。它有以下語句在頁面上144使我感到困惑:Objective-C中的int是否自動初始化爲0?
作爲基本C數據類型的局部變量沒有默認初始值,因此您必須在使用它們之前將它們設置爲某個值。
然而,當我有下面的代碼,它仍然有效,並顯示0:
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[])
{
int number;
NSLog(@"%i", number);
return 0;
}
是不是int
一個基本的C數據類型?
密切相關:[C中int數組的初始值](http://stackoverflow.com/q/1414215) –
只要在調試器中運行代碼,它就會工作。調試器對你的應用程序內存使用0初始化局部變量有一些魔力:http://www.flounder.com/debug_release.htm – user2378197