Contents
1. ๋๋ฒ๊ทธ๋ ๋ฌด์์ผ๊น? ¶
- ํ๋ก๊ทธ๋จ์ ์ค๋ฅ๋ฅผ ๋ฐ๊ฒฌํ๊ณ , ๊ทธ ์์ธ์ ๋ฐํ๋ด์ ๊ณ ์น๋ ์์
1.2.1. ๋๋ฒ๊ฑฐ ๋ฐฉ์ ¶
- ํ๋ก๊ทธ๋จ์ ์คํํ ๋ ๋๋ฒ๊น
๋ชจ๋๋ก ์ปดํ์ผํ์ฌ ๋๋ฒ๊ฑฐ ๊ธฐ๋ฅ์ ํฌํจ์์ผ์ ์ฌ์ฉํ๋ฉด์ ์ค๋ฅ์ ๊ดํ ๊ฐ์ข
์ ๋ณด๋ฅผ ์์ง
1.2.2. ๋๋ฒ๊ทธ ํ ๋ฐฉ์ ¶
- ์์งํ๊ณ ์ถ์ ์ ๋ณด๋ฅผ ์ถ๋ ฅํ๊ธฐ ์ํ ๋๋ฒ๊น
์ฉ ๋ช
๋ น์ ๋ฏธ๋ฆฌ ํ๋ก๊ทธ๋จ ๊ณณ๊ณณ์ ์ฝ์
ํ์ฌ ์คํ ์ํค๋ ๋ฐฉ์
2. ๋๋ฒ๊น ๋ ธํ์ฐ ¶
- ์๋ก์ด ์ฝ๋๋ฅผ ์์ฑํ๊ธฐ ์ ์ ํ์ฌ ์๋ ๋ฒ๊ทธ๋ค์ ์ก๋๋ค.
- ๋ฒ๊ทธ๋ ์ค๋ ๋๋ฉด ๋ ์๋ก ๊ทธ๊ฑฐ์ ๊ด๋ จ๋ ์ฝ๋์ ๋ํ ๊ธฐ์ต๋ ํฌ๋ฏธํด์ง๊ณ , ๋ถ๋ช
ํํด์ ธ์ ๋๋ฒ๊น
ํ๋๋ฐ ๋ ๋ง์ ์๊ฐ์ด ๊ฑธ๋ฆฌ๊ฒ ๋๋ค.
- ๋ฒ๊ทธ๋ ์ค๋ ๋๋ฉด ๋ ์๋ก ๊ทธ๊ฑฐ์ ๊ด๋ จ๋ ์ฝ๋์ ๋ํ ๊ธฐ์ต๋ ํฌ๋ฏธํด์ง๊ณ , ๋ถ๋ช
ํํด์ ธ์ ๋๋ฒ๊น
ํ๋๋ฐ ๋ ๋ง์ ์๊ฐ์ด ๊ฑธ๋ฆฌ๊ฒ ๋๋ค.
- ํ๋ฒ์ ํ๋์ฉ์ ๋ฒ๊ทธ๋ฅผ ์์ ํ๊ณ ํ
์คํธ ํด๋ณธ๋ค.
- ๊ณผํ์คํ์์๋ ํ๋์ ์ธ์๋ฅผ ๋ฐ๊ฟ๊ฐ๋ฉด์ ์คํ์ ํ์ง ํ๊บผ๋ฒ์ ์ฌ๋ฌ ์ธ์๋ฅผ ๋ฐ๊พธ๋ฉด์ ์คํํ์ง๋ ์๋๋ค.
- ๊ณผํ์คํ์์๋ ํ๋์ ์ธ์๋ฅผ ๋ฐ๊ฟ๊ฐ๋ฉด์ ์คํ์ ํ์ง ํ๊บผ๋ฒ์ ์ฌ๋ฌ ์ธ์๋ฅผ ๋ฐ๊พธ๋ฉด์ ์คํํ์ง๋ ์๋๋ค.
- ๋ถํ ์ ๋ณต ๊ธฐ๋ฒ
- ๋ถํ ์ ๋ณต์ ํ๋ค๊ฐ ์๊ธธ์ ์๋ ๋ถ๋ถ์ ๋๋ฌด๋ง ๋ณด๊ฒ ๋๊ณ ์ฒ์ ๋ณด์ง ๋ชปํ๊ฒ ๋๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์ฃผ์!
4. ๋๋ฒ๊ทธ ๋ง์๊ฐ์ง ¶
Ridiculus Simplity
๊น๊ฒ ์๊ฐํ๊ธฐ ๋ณด๋ค ๋๊ฒ ์๊ฐํ๋ผ.
๋ฒ๊ทธ๊ฐ ์์ ๋ฆฌ๊ฐ ์์ด!๋ผ๊ณ ์๊ฐ์ง ๋ง๋ผ.
์ด๋์๋ถํฐ ์์ํ ์ง ์๊ฐํ๋ค.
๋ฐ์ดํฐ๋ฅผ ๋์ ๋ณด์ด๊ฒ ๋ง๋ค๋ผ.
๋๊ตฐ๊ฐ์๊ฒ ์ค๋ช ํ๋ค
๊น๊ฒ ์๊ฐํ๊ธฐ ๋ณด๋ค ๋๊ฒ ์๊ฐํ๋ผ.
๋ฒ๊ทธ๊ฐ ์์ ๋ฆฌ๊ฐ ์์ด!๋ผ๊ณ ์๊ฐ์ง ๋ง๋ผ.
์ด๋์๋ถํฐ ์์ํ ์ง ์๊ฐํ๋ค.
๋ฐ์ดํฐ๋ฅผ ๋์ ๋ณด์ด๊ฒ ๋ง๋ค๋ผ.
๋๊ตฐ๊ฐ์๊ฒ ์ค๋ช ํ๋ค
.
5.1. VC++๋๋ฒ๊ฑฐ ์ฐ๊ธฐ ¶
- Debug
๊ธฐ๋ฅ | ๋จ์ถํค(*->์ค์๋) | ์๋ฏธ |
Start Debugging, Go | *F5 | ๋๋ฒ๊น ๋ชจ๋๋ก ์คํ, ๋๋ฒ๊น ๋ชจ๋ ์ค์ F5๋ฅผ ๋ค์ BreakPoint๋ก ์ด๋ํจ |
BreakPoint | * F9 | ๋๋ฒ๊น ๋ชจ๋์์ ๋ฉ์ถ๊ณณ์ ์ง์ |
Stop Debugging | shift + F5 | ๋๋ฒ๊น ๋ชจ๋ ์ค๋จ |
Step Into | F11 | ๋๋ฒ๊น ๋ชจ๋์์ ํ ๋ผ์ธ์ฉ ์คํ - ํจ์๋ฅผ ๋ง๋๋ฉด ํจ์ ๋ด๋ถ๋ก ๋ค์ด๊ฐ์ ๊ณ์ ์คํ |
Step Over | F10 | ๋๋ฒ๊น ๋ชจ๋์์ ํ ๋ผ์ธ์ฉ ์คํ - ํจ์๋ฅผ ๋ง๋๋ฉด ๋ด๋ถ๋ก ์๋ค์ด๊ฐ๊ณ ์คํ๋ง ํ๊ณ ๋ค์ ๊ณ์ ์คํ |
Step Out | shift+F11 | Step Into ๋ก ํจ์์์ ๋ค์ด๊ฐ๋ค๊ฐ ๋์ค๊ณ ์ถ์๋ ์ฌ์ฉ |
Run to Cursor | Ctrl+F10 | ํ์ฌ ์ปค์๊ฐ ์๋ ๊ณณ์ผ๋ก ๋๋ฒ๊น ์ง์ ์ด ๋ฐ๋. ๋จ ์ด๋ฏธ ์ง๋ ๊ณณ์ผ๋ก๋ ์๋จ |
Set Next Statement | - | ๋ค์ ๋๋ฒ๊น ์ง์ ์ ์ง์ . Run to Cursor์์๋ ์ด๋ฏธ ์ง๋๊ณณ์ ์๋์ง๋ง ์ฌ๊ธฐ์๋ ๋จ |
- View
ํ๋ฉด(*->์ค์๋) | ์ฉ๋ |
*Watch Window | ๋ณ์๊ฐ์ด๋ ๊ฐ์ฒด์ ์ํ๋ฅผ ๋ด. ๊ทธ ๊ฐ์ ๋ณ๊ฒฝ์ํฌ์๋ ์์ |
Call Stack Window | ํจ์ ํธ์ถ ๊ฒฝ๋ก๋ฅผ ๋ณด์ฌ์ค |
Disassembly | ์ญ์ด์ ๋ธ๋ฆฌ์ด ์ฝ๋๋ฅผ ๋ณด์ฌ์ค |
5.2. Eclipse๋๋ฒ๊ฑฐ ์ฐ๊ธฐ ¶
๊ธฐ๋ฅ | ๋จ์ถํค(*->์ค์๋) | ์๋ฏธ |
Debug start | *F11 | ๋๋ฒ๊น ๋ชจ๋๋ก ์คํ |
BreakPoint | * Ctrl + Shift + b | ๋๋ฒ๊น ๋ชจ๋์์ ๋ฉ์ถ๊ณณ์ ์ง์ |
Step Into | F5 | ๋๋ฒ๊น ๋ชจ๋์์ ํ ๋ผ์ธ์ฉ ์คํ - ํจ์๋ฅผ ๋ง๋๋ฉด ํจ์ ๋ด๋ถ๋ก ๋ค์ด๊ฐ์ ๊ณ์ ์คํ |
Step Over | F6 | ๋๋ฒ๊น ๋ชจ๋์์ ํ ๋ผ์ธ์ฉ ์คํ - ํจ์๋ฅผ ๋ง๋๋ฉด ๋ด๋ถ๋ก ์๋ค์ด๊ฐ๊ณ ์คํ๋ง ํ๊ณ ๋ค์ ๊ณ์ ์คํ |
Run to Return(Step Out) | F7 | ์ด๋ค ํจ์์์ ๋ค์ด๊ฐ๋ค๊ฐ ๋ฐ๋ก ๊ทธ ํจ์๋ฅผ ๋์ค๊ณ ์ถ์๋ ์ฌ์ฉ |
Resume(go) | F8 | ๋ค์ BreakPoint ์ง์ ์ผ๋ก ์ด๋ |
- tip : Ctrl + F11 : ์คํ
5.3.1. ๋๋ฒ๊ทธํ ๋ฐฉ์ ¶
- ๋๋ฒ๊น
ํ๊ณ ์ถ์ ๊ณณ์ ๋ณด๊ณ ์ถ์ ๋ณ์๋ช
์ ํ์ผ๋ก ์ถ๋ ฅํ๋ ํจ์๋ฅผ ๋ฃ๋๋ค.
6. ๋ฐ๋ณต๋๋ ๋๋ฒ๊น ํผํ๊ธฐ - DebugJournal ¶
์ฌ์ค : ์ฝ์ง ๋ด์ฉ, ๊ทธ ์ฌ์ , ์ค์ํ ์ด์ผ๊ธฐ -> ์ฌ๊ณ ์ ๊ณผ์ ์ด ๋๋ฌ๋๋๋ก!
๋๋, ๊ตํ
๋ฏธ๋ ํ๋ ๊ณํ(FAP)
ํผ๋๋ฐฑ
๋๋, ๊ตํ
๋ฏธ๋ ํ๋ ๊ณํ(FAP)
ํผ๋๋ฐฑ