作者autoexecbat (<(^_^)@m)
看板C_and_CPP
标题[建议] Debug C
时间Sat Jun 10 22:53:51 2006
建议板上的各位,
或许很多人已经知道,
你要是发现你的程式执行後有问题!
请自己先动手Debug!
就是可以利用C的程式码,
植入里面要检查的那一小段,
打
1 你想要show什麽参数出来检查.
2 while(1);
将程式停在那里,
你就可以知道相关变数对不对,
如果不对,
就追朔既往,
一步一步往前查,
我都是从比较没问题的前面开始查,
然後一步一步往後查,
就知道问题在哪里?
不要嫌麻烦,
查久了,
你会发现你写程式的功力大增,
不需要靠别人也能完成事情.
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.248.42.40
1F:推 blueshiang:同同意 这样你还能比较了解这程式是怎麽跑的 06/10 23:00
2F:推 drkkimo:说的不错~M~~起来:) 06/10 23:05
3F:→ drkkimo:我觉得至少有时候一小段错误讯息也没有很难的英文单字 自 06/10 23:06
4F:→ drkkimo:已看一下的话 可以增加很多效率~ 06/10 23:06
5F:→ drkkimo:不过原PO是说用DEGUG..反正试着自已找问题能力会增加的ꨠ 06/10 23:07
6F:推 cole945:不过用while(1);来debug似乎怪怪的.__." 06/10 23:26
7F:→ cole945:可以用设中断点(breakpoint)配合逐行执行效果会更好 :> 06/10 23:27
8F:推 autoexecbat:有些编译器或有些环境,不太容许你有软体除错器, 06/11 01:30
9F:→ autoexecbat:你必须要想办法解决问题! 06/11 01:30
10F:→ autoexecbat:譬如某需烧录IC, debug C的软体除错工具很贵, 06/11 01:31
11F:→ autoexecbat:你就不能用软体除错工具来设中断点,必须写程式设中断! 06/11 01:32
12F:推 autoexecbat:你如果持续这样做,不断找问题能力增加,写程式前的 06/11 01:35
13F:→ autoexecbat:分析能力也会变强,因为重复出现的问题!你就会提防! 06/11 01:35
14F:推 ledia:烧 IC 也不会让你 while(1) 吧 O_o 06/11 01:55
15F:推 autoexecbat:你在while(1)之前,想办法把资料丢出来就可以啦! 06/11 03:01
16F:→ autoexecbat:程式写while(1),烧进去就是如果执行到那就会停下来! 06/11 03:02
17F:推 holio:何不gdb? 06/11 04:15
18F:→ holio:喔没事 我没把推文看仔细XD 06/11 04:16
19F:推 cplusplus:哈哈哈 while(1); 我会用来测试acm程式 XD 06/12 12:10
20F:推 autoexecbat:Debug的方式有很多种,目的就是要看跑到那里的资料是 06/13 15:13
21F:→ autoexecbat:怎样? 06/13 15:14