# LLDB - Whales๐, Zion๐ ###### tags: `ํ๋ํ์ต`, `LLDB` 1. ViewController.swift ํ์ผ์ 23๋ฒ์งธ ์ค์ ๋ธ๋ ์ดํฌ ํฌ์ธํธ๋ฅผ ์ค์ ํ๋ ค๋ฉด ์ ๋ ฅํด์ผ ํ๋ LLDB ๋ช ๋ น์ด๋? - b ViewController.swift:23 2. changeTextColor๋ผ๋ ์ฌ๋ณผ์ ๋ธ๋ ์ดํฌ ํฌ์ธํธ๋ฅผ ์ค์ ํ๊ธฐ ์ํด ์ ๋ ฅํด์ผ ํ๋ LLDB ๋ช ๋ น์ด๋? - b changeTextColor 3. LLDB์ ํน์ ๋ช ๋ น์ด์ ๋ณ์นญ์ ์ค์ ํด์ค ์ ์๋ ๋ช ๋ น์ด๋ ๋ฌด์์ผ๊น์? - command alias 4. Breakpoint Navigator๋ฅผ ํตํด titleLabel์ text๊ฐ "๋ ๋ฒ์งธ ๋ทฐ ์ปจํธ๋กค๋ฌ!"์ธ ๊ฒฝ์ฐ์๋ง ์๋์ ์ผ์์ ์งํ๊ณ titleLabel์ text๋ฅผ ์ถ๋ ฅํ๋ ์ก์ ์ ์คํํ๋๋ก ์ค์ ํด๋ณด์ธ์ - br s -f ViewController.swift -l 19 -c `titleLabel.text == "๋ ๋ฒ์งธ ๋ทฐ ์ปจํธ๋กค๋ฌ!"` -C "po testLabel.text" 5. ์ค๋ฅ(Error) ํน์ ์ต์ ์ (Exception)์ด ๋ฐ์ํ ๊ฒฝ์ฐ ํ๋ก์ธ์ค์ ๋์์ ๋ฉ์ถ๋๋ก ํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ด ์๋ค  6. View Controller์ ๋ทฐ ์์๋ ์ฌ์ฉ์ ๋์ ๋ณด์ด์ง ์๋ ๋ทฐ๊ฐ ์์ต๋๋ค. ์ด ๋ทฐ์ ์คํ ๋ ์ด์์ ์ ์ฝ์ ํ์ธํด์ ์๋ ค์ฃผ์ธ์  7. ๋๋ฒ๊ทธ ๋ชจ๋๋ก ์คํ์ค์ธ ์ํ์์ ์ฌ์ฉ์ ๋์ ๋ณด์ด์ง ์๋ ๋ทฐ์ ์์์ ๋ถํ์์ผ๋ก ๋ณ๊ฒฝํด๋ณด์ธ์  8. LLDB์ `v`, `po`, `p` ๋ช ๋ น์ด์ ์ฐจ์ด์ ๋ํด ์์๋ด ์๋ค - `v` - 'frame variable'์ ์ฝ์ด - 'Var->child.x'์ ๊ฐ์ ๋ณ์๋ฅผ ์ง์ ํ ์ ์๋ค. - ๋ณ์ 'expr local_var'์ 'frame var local_var'๋ ๋์ผํ ๊ฒฐ๊ณผ๋ฅผ ์์ฑํฉ๋๋ค. - 'ํ๋ ์ ๋ณ์'๋ ๋๋ฒ๊ทธ ์ ๋ณด๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋ ํจ์จ์ ์ด๋ค. - ๋ฉ๋ชจ๋ฆฌ๋ ํํ์ ๊ตฌ๋ฌธ ๋ถ์ํ๊ณ ํ๊ฐํ๋ ๋์ ์ง์ ์ฝ๋๋ค. - `p` - expression --'์ ์ฝ์ด - `po` - ๊ฐ์ฒด์ ๋ํ ๋ค์ํ ์ ๋ณด๋ฅผ Console์ ์ถ๋ ฅํ์ฌ ํ์ธ ํ ์ ์๋ค. - po๋ (lldb) expression -O -- ์ Shorthand. ์ฌ๊ธฐ์ -O option์ object์ description์ ์ถ๋ ฅํ๊ฒ ๋ค๋ ๋ป - po๊ฐ ์ถ๋ ฅํ๋ description์ NSObject์ debugDescription์ ๋๋ค. 9. ๋ ๋ฒ์งธ ๋ทฐ ์ปจํธ๋กค๋ฌ์ ๋ทฐ๊ฐ ํ๋ฉด์ ํ์๋ ์ํ์์, ๋ ๋ฒ์งธ ๋ทฐ ์ปจํธ๋กค๋ฌ ๊น์ง์ ๋ฉ๋ชจ๋ฆฌ ๊ทธ๋ํ๋ฅผ ์บก์ณํด๋ณด์ธ์ 
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up