紹棠 iOS開發常用的除錯命令

2021-07-15 03:53:44 字數 1549 閱讀 1045

常用的除錯命令

po po是print-object的簡寫,可用來列印所有nsobject物件。sample code:

(lldb) po self.view

; layer = ; contentoffset: >

(lldb) po self

p p是print的簡寫,可以用來列印所有的簡單型別,如int, float,結構體等。sample code:

itemdata item;  

item.nmainid=1;

item.nsubid=2;

item.psztitle=@"hello";

nsrect rect=nsmakerect(0, 10, 10, 10);

除錯命令及輸出結果:

(lldb) print rect

(nsrect) $0 = (x=0, y=10), (width=10, height=10)

(lldb) p item

(itemdata) $3 =

call

call即是呼叫的意思。其實上述的po和p也有呼叫的功能。因此一般只在不需要顯示輸出,或是方法無返回值時使用call

bt 這時xcode會自動輸出最後的一次呼叫堆疊

(lldb) bt

frame #0: 0x00002cdf tabaleview`-[rootviewcontroller initwithstyle:](self=0x09813e90, _cmd=0x009b99c2, style=uitableviewstyleplain) + 127 at rootviewcontroller.m:23

frame #1: 0x004e5add uikit`-[uitableviewcontroller init] + 41

frame #9: 0x036e02f6 graphicsservices`_purpleeventcallback + 776

frame #10: 0x036dfe01 graphicsservices`purpleeventcallback + 46

frame #11: 0x016b4d65 corefoundation`__cfrunloop_is_calling_out_to_a_source1_perform_function__ + 53

frame #12: 0x016b4a9b corefoundation`__cfrunloopdosource1 + 523

frame #13: 0x016df77c corefoundation`__cfrunlooprun + 2156

frame #14: 0x016deac3 corefoundation`cfrunlooprunspecific + 467

frame #15: 0x016de8db corefoundation`cfrunloopruninmode + 123

frame #18: 0x00002c2d tabaleview`main(argc=1, argv=0xbfffee5c) + 141 at main.m:16

紹棠 ios開發 獲取本機的手機號碼

步驟如下 2 在 m中加入紅字部分 import h extern nsstring ctsettingcopymyphonenumb er implementation nsstring mynumber end 其實很多地方都寫了 標識extern nsstring ctsettingcopym...

IOS 除錯lldb命令常用 po

lldb命令常用 備忘 假如你準備在模擬器裡面執行這個,你可以在 lldb 提示的後面輸入下面的 lldb po eax lldb在xcode4.3或者之後的版本裡面是預設的偵錯程式。假如你正在使用老一點版本的xcode的話,你又gdb偵錯程式。他們有一些基本的相同的命令,因此假如你的xcode使用...

ios開發 lldb命令常用

lldb命令常用 假如你準備在模擬器裡面執行這個,你可以在 lldb 提示的後面輸入下面的 lldb po eaxlldb在xcode4.3或者之後的版本裡面是預設的偵錯程式。假如你正在使用老一點版本的xcode的話,你又gdb偵錯程式。他們有一些基本的相同的命令,因此假如你的xcode使用的是 g...