3
我想打印的堆棧跟蹤我的Objective-C程序Objective-C的 - 命令行(鐺) - 打印堆棧跟蹤
我在命令行中使用鐺編譯(自動引用計數)
我想了解以下內容:
- 我一定要添加任何參數,同時編制?
- 我是否需要添加任何代碼來啓動跟蹤並打印跟蹤?
下面給出的是,我有打印的堆棧跟蹤的一個範例程序:
#import<Foundation/Foundation.h>
@interface Car : NSObject
@property (weak) NSNumber* doors;
@end
@implementation Car
@synthesize doors;
@end
int main()
{
system("clear");
Car *car1 = [[Car alloc] init];
NSNumber *d1 = [[NSNumber alloc] initWithInteger: 4];
//I want to start printing the stack trace from this point on
car1.doors = d1;
printf("---- end\n");
return(0);
}
命令用來編譯:
clang -fobjc-arc test.m -framework Foundation -o test
謝謝,我有個疑問,在我剛剛在聲明'car1.doors = d1;'時執行的程序中發生了分段錯誤,那麼我怎麼才能知道是什麼導致了分段錯誤。如果在導致分段錯誤的語句之前調用函數'printStackTrace()',那麼跟蹤不會顯示太多,如果我在導致分段錯誤的語句之後調用它,則不會到達那裏。 – user1046037
我想有超過1種方式來做到這一點,下面給出的是顯示一個選項的鏈接:http://stackoverflow.com/questions/8125530/objective-c-arc-nsnumber-segmentation-fault – user1046037