二、串連時的常見錯誤
1.將Turbo C庫函數名寫錯。這種情況下在串連時將會認為此函數是使用者自訂函數。此時螢幕顯示:
Undefined symbol '<函數名>' in <程式名>
2.多個檔案串連時,沒有在"Project/Project name中指定專案檔(.PRJ檔案),此時出現找不到函數的錯誤。
3.子函數在說明和定義時類型不一致。
4.程式調用的子函數沒有定義。
三、運行時的常見錯誤
1.路徑名錯誤。在MS-DOS中,斜杠(\)表示一個目錄名;而在Turbo C中斜杠是個某個字串的一個逸出字元,這樣,在用Turbo C字串給出一個路徑名時應考慮"\"的轉義的作用。例如,有這樣一條語句:
file=fopen("c:\new\tbc.dat", "rb");
目的是開啟C盤中NEW目錄中的TBC.DAT檔案,但做不到。這裡"\"後面緊接的分別是"n"及"t","\n"及"\t"將被分別編譯為換行及tab字元,DOS將認為它是不正確的檔案名稱而拒絕接受,因為檔案名稱中不能和換行或tab字元。正確的寫法應為:
file=fopen("c:\\new\\tbc.dat", "rb");
2.格式化輸入輸出時,規定的類型與變數本身的類型不一致。例如:
float l;
printf("%c", l);
3.scanf()函數中將變數地址寫成變數。例如:
int l;
scanf("%d", l);
4.迴圈語句中,迴圈控制變數在每次迴圈未進行修改,使迴圈成為無限迴圈。
5.switch語句中沒有使用break語句。
6.將賦值號"="誤用作關係符"=="。
7.多層條件陳述式的if和else不配對。
8.用動態記憶體分配函數malloc()或calloc()分配的記憶體區使用完之後,未用free()函數釋放,會導致函數前幾次調用正常,而後面調用時發生死機現象,不能返回作業系統。其原因是因為沒用空間可供分配,而佔用了作業系統在記憶體中的某些空間。
9.使用了動態分配記憶體不成功的指標,造成系統破壞。
10.在對檔案操作時,沒有在使用完及時關閉開啟的檔案。
————————————————》END《——————————————