글

라벨이 프로그래밍인 게시물 표시

[펌] C++ STL 설명.

최홍배님이 한빛미디어 사이트에 게제한 것으로, STL을 이해하기 쉽도록 풀어 써주셧다. About STL : C++ STL 프로그래밍(1) About STL : C++ STL 프로그래밍(2-1) About STL : C++ STL 프로그래밍(2-2) About STL : C++ STL 프로그래밍(3) About STL : C++ STL 프로그래밍(4) About STL : C++ STL 프로그래밍(5-1) About STL : C++ STL 프로그래밍(5-2) About STL : C++ STL 프로그래밍(6) About STL : C++ STL 프로그래밍(7) About STL : C++ STL 프로그래밍(8) About STL : C++ STL 프로그래밍(9) About STL : C++ STL 프로그래밍(10) 원본 사이트 :  http://jacking.tistory.com/491

GDB 간단한 사용 방법

gdb를 이용하여 프로그램을 이용한 디버깅 방법을 간략히 설명한다. 1. gdb를 이용, 디버깅 하기 위해서는 gcc 옵션 -g를 지정하여 컴파일 한다. ex> gcc -g -o debug1 debug1.c 2. 컴파일된 바이너리 파일이 있는 곳에서 gdb [바이너리파일명] 입력하여 gdb 실행한다. ex> gdb debug1 3. gdb 명령어 'run'으로 컴파일된 프로그램을 실행한다. (gdb) run 4. debug1 프로그램 실행 시 segmentation fault가 발생하였다면 발생시점에서 run은 중지된다. 5. segmentation fault 발생시점에서 backtrace 또는 bt 명령어를 입력하면 오류 발생 직전 사용된 코드를 확인할 수 있다. (gdb) bt 6. segmentation fault 는 발생하지 않지만 프로그램이 원하는 의도하지 않은 결과를 출력할 경우, breakpoint를 지정하여 단계별 실행 및 변수에 담긴 값을 확인 할 수 있다. 'break' 명령어와 line_number 또는 function_name을 입력한다. (gdb) break 21 또는 (gdb) break sort 7. breakpoint 지정 후 'run'을 이용 프로그램을 실행하면 breakpoint가 설정된 위치에서 프로그램의 실행이 멈준다. 이 후 'next' 명령어를 이용 한단계씩 프로그램을 진행시킬 수 있다. (gdb) next 8. Loop에 breakpoint 를 지정한 상황에서 'next' 명령어를 이용하여 다음 Loop까지 가는것이 힘들다면 'cont' 명령어를 이용하여 다음 breakpoint까지 단숨에 이동한다. (gdb) cont 9. 'next' 명령어를 이용 단계별 실행 도중 변수에 담긴 값이 궁금하다면 'prin...