[ CnUnix ] in KIDS 글 쓴 이(By): Armian (-미 카 엘-邦) 날 짜 (Date): 1994년10월14일(금) 14시55분12초 KST 제 목(Title): [re] X 에서 디버깅 xdbx 좀 가르쳐 주세요 먼저 컴파일을 할때 g 옵션을 사용해야 한다는 것은 아시겠죠.. cc -o program program.c -g ^^^ 그 다음에... xdbx program& 이라고 하게되면..xdbx 가 뜨면서 source 코드를 읽어 옵니다.. 그리고 커서(^ 모양임)가 맨 처음 실행할 위치로 이동해 있습니다.. 보통.. 의심스러운 부분을 체크하기 때문에 그 이전까지는 살펴볼 필요가 없으므로.. 의심스러운 부분으로 마우스를 이동하여 갖다댄 다음에.. 왼쪽 버튼을 눌러주면.. 커서(^)가 옮겨집니다.. 그럼 요기서 밑에 메뉴에 있는 "stop at"을 선택하면.. 빨간 손바닥이 커서 왼쪽에 찍힙니다.. 즉, 요기서 일단 멈추라는 야그죠.. 그 다음..메뉴에서 run 을 선택하여 빨간 손바닥까지 실행을 시킵니다.. 그러면.. 화살표 모양이 커서가 나타나며 현재실행해야될 위치를 가리키게 됩니다.. 요기서 부터는 의심스러운 부분이므로 print, print *, step, next 를 사용하여 조사하면 됩니다.. step 이나 next 는 한 단계씩 명령을 실행하는 것은 같지만.. 다른 함수를 호출할때 불려진 함수로 들어가게 할려면 step 을 사용하고, 그렇지 않고 그냥 skip 하고 싶� 면 next 를 사용하시면 됩니다.. 이렇게 한 단계씩 수행하면서 의심스러운 변수들을 print , print * 메뉴를 사용하여 출력해 보면 됩니다.. 그냥 변수인 경우엔 print를 포인터 변수인 경우엔 print * 를 사용하십시요.. 출력하기 원하는 변수로 마우스를 옮긴 다음 왼쪽 버튼을 누르면 역상이 되는데..이때 print 나 print * 메뉴를 선택 하면 됩니다.. 저도 기타의 메뉴들은 사용해보지 않아서..잘은 모르겠네요.. 아참.. 한 가지가 더 있네요.. while 이나 for 같이 루프가 많이 반복되는 부분을 빠져 나오려면 루프 바깥에다가.. stop at 을 찍고, cont 메뉴를 선택하면 거기까지 수행되고요.. 루프안에다 찍으면 cont 선택할 때마다 한 루프씩 수행되므로 꼬옥 stop at 을 사용하기를.. 안그러면 next 나, step 으론 하루 종일 걸려도 못빠져 나올지도.. 누가 더 자세히 알고 계신 분은 추가 좀 해주세요.. 저도 많이는 사용해보질 못해서..아마도 더 좋은 기능들이 있을 텐데요... 그럼 도움이 되었길.. ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ 인생은언제나예측불허그리하여생은그의미를갖는다비록그의미가처절한슬픔을내포할지 라도슬픔속엔빛이있다보석보다찬란한진실의빛이 에구..아르미안의 네딸들 29 권은 |