close
1.Linux下可以使用gdb進行debug
2.bug - segmentation fault
Linux下使用gdb進行debug
主要的procedure為:
1.對file加入除錯符號資訊
2.進入gdb
3.指定要除錯的file
4.開始debug - run
以下為兩個reference 的web site
[1]http://www.cis.nctu.edu.tw/~is93007/acd.htm
[2]http://www-2.cs.cmu.edu/~gilpin/tutorial/
bug - segmentation fault
FILE *fr;
int i;
for(i=0;i<100;i++)
{
fr = fopen("a.txt","r"); //bug , 正確要放在iteration外面
}
fclose(fr);
因為在iteration中 , 每次都會開啟a.txt這個file , 而fr一直沒有被close ,
所以iteration次數一多時 , 會造成memory被灌爆 , 導致segmentation fault的產生.
(雖然說 , 這樣執行下來 , 結果也是不正確的 , 因為每次都會read到first line.)
全站熱搜
留言列表