C語言錯誤種類總結(jié)_第1頁
C語言錯誤種類總結(jié)_第2頁
C語言錯誤種類總結(jié)_第3頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、Turbo C(V2.0) 編譯錯誤信息編譯錯誤信息說明: Turbo C 的源程序錯誤分為三種類型:致命錯誤、一般錯 誤和警告。其中, 致命錯誤通常是內(nèi)部編譯出錯;一般錯誤指程序的 語法錯誤、 磁盤或內(nèi)存存取錯誤或命令行錯誤等; 警告則只是指出一 些得懷疑的情況,它并不防止編譯的進行。下面按字母順序AZ分別列出致命錯誤及一般錯誤信息,英漢 對照及處理方法:(一)、致命錯誤英漢對照及處理方法:A-B致命錯誤Bad call of in-line function( 內(nèi)部函數(shù)非法調(diào)用 )分析與處理:在使用一個宏定義的內(nèi)部函數(shù)時,沒能正確調(diào)用。一個 內(nèi)部函數(shù)以兩個下劃線 (_) 開始和結(jié)束。Irr

2、educable expression tree( 不可約表達式樹 )分析與處理: 這種錯誤指的是文件行中的表達式太復雜, 使得代碼生 成程序無法為它生成代碼。這種表達式必須避免使用。Register allocation failure ( 存儲器分配失敗 )分析與處理: 這種錯誤指的是文件行中的表達式太復雜, 代碼生成程 序無法為它生成代碼。 此時應簡化這種繁雜的表達式或干脆避免使用 它。(二) 、一般錯誤信息英漢照及處理方法#operator not followed by maco argument name(# 運算符后沒跟宏變元名 ) 分析與處理:在宏定義中, #用于標識一宏變串。

3、“ #”號后必須跟一 個宏變元名。'xxxxxx' not anargument ('xxxxxx' 不是函數(shù)參數(shù) )分析與處理: 在源程序中將該標識符定義為一個函數(shù)參數(shù), 但此標識 符沒有在函數(shù)中出現(xiàn)。Ambiguous symbol 'xxxxxx' ( 二義性符號 'xxxxxx') 分析與處理:兩個或多個結(jié)構的某一域名相同,但具有的偏移、類型 不同。在變量或表達式中引用該域而未帶結(jié)構名時,會產(chǎn)生二義性, 此時需修改某個域名或在引用時加上結(jié)構名。Argument # missing name ( 參數(shù)#名丟失 ) 分析與處理

4、: 參數(shù)名已脫離用于定義函數(shù)的函數(shù)原型。 如果函數(shù)以原 型定義,該函數(shù)必須包含所有的參數(shù)名。 Argument list syntax error ( 參數(shù)表出現(xiàn)語法錯誤 ) 分析與處理: 函數(shù)調(diào)用的參數(shù)間必須以逗號隔開, 并以一個右括號結(jié) 束。若源文件中含有一個其后不是逗號也不是右括號的參數(shù), 則出錯。Array bounds missing ( 數(shù)組的界限符 "" 丟失 ) 分析與處理: 在源文件中定義了一個數(shù)組, 但此數(shù)組沒有以下右方括 號結(jié)束。Array size too large( 數(shù)組太大 )分析與處理:定義的數(shù)組太大,超過了可用內(nèi)存空間。Assembler

5、statement too long ( 匯編語句太長 ) 分析與處理:內(nèi)部匯編語句最長不能超過 480 字節(jié)。Bad configuration file ( 配置文件不正確 )分析與處理:TURBOC.CF配置文件中包含的不是合適命令行選擇項 的非注解文字。配置文件命令選擇項必須以一個短橫線開始。Bad file name format in include directive( 包含指令中文件名格式不正確 )分析與處理:包含文件名必須用引號 ("filename.h") 或尖括號 (filename) 括起來,否則將產(chǎn)生本類錯誤。如果使用了宏,則產(chǎn)生 的擴展文本也不正

6、確,因為無引號沒辦法識別。Bad ifdef directive syntax (ifdef 指令語法錯誤 )分析與處理: #ifdef 必須以單個標識符 ( 只此一個 ) 作為該指令的體Bad ifndef directive syntax(ifndef 指令語法錯誤 )分析與處理: #ifndef 必須以單個標識符 (只此一個 )作為該指令的 體。Bad undef directive syntax(undef 指令語法錯誤 )分析與處理: #undef 指令必須以單個標識符 (只此一個 )作為該指令 的體。Bad file size syntax( 位字段長語法錯誤 )分析與處理:一個位

7、字段長必須是 116 位的常量表達式。Call of non-functin( 調(diào)用未定義函數(shù) )分析與處理: 正被調(diào)用的函數(shù)無定義, 通常是由于不正確的函數(shù)聲明 或函數(shù)名拼錯而造成。Cannot modify a const object ( 不能修改一個長量對象 ) 分析與處理:對定義為常量的對象進行不合法操作 (如常量賦值 ) 引起 本錯誤。Case outside of switch (Case 出現(xiàn)在 switch 外) 分析與處理: 編譯程序發(fā)現(xiàn) Case 語句出現(xiàn)在 switch 語句之外, 這類 故障通常是由于括號不匹配造成的。Case statement missing (C

8、ase 語句漏掉 )分析與處理:Case語必須包含一個以冒號結(jié)束的常量表達式,如果 漏了冒號或在冒號前多了其它符號,則會出現(xiàn)此類錯誤。Character constant too long ( 字符常量太長 ) 分析與處理: 字符常量的長度通常只能是一個或兩個字符長, 超過此 長度則會出現(xiàn)這種錯誤。Compound statement missing ( 漏掉復合語句 ) 分析與處理:編譯程序掃描到源文件未時,未發(fā)現(xiàn)結(jié)束符號 ( 大括 號) ,此類故障通常是由于大括號不匹配所致。Conflicting type modifiers ( 類型修飾符沖突 ) 分析與處理:對同一指針,只能指定一種變

9、址修飾符 ( 如 near 或 far) ;而對于同一函數(shù), 也只能給出一種語言修飾符 ( 如 Cdecl、pascal 或 interrupt) 。Constant expression required ( 需要常量表達式 ) 分析與處理:數(shù)組的大小必須是常量,本錯誤通常是由于 #define 常 量的拼寫錯誤引起。Could not find file 'xxxxxx.xxx'( 找不到 'xxxxxx.xx' 文件 )分析與處理:編譯程序找不到命令行上給出的文件Declaration missing ( 漏掉了說明 ) 分析與處理:當源文件中包含了一個

10、struct 或 union 域聲明,而后 面漏掉了分號,則會出現(xiàn)此類錯誤。Declaration needs type or storage class( 說明必須給出類型或存儲類) 分析與處理: 正確的變量說明必須指出變量類型, 否則會出現(xiàn)此類錯 誤。Declaration syntax error( 說明出現(xiàn)語法錯誤 )分析與處理:在源文件中, 若某個說明丟失了某些符號或輸入多余的 符號,則會出現(xiàn)此類錯誤。Default outside of switch (Default 語句在 switch 語句外出現(xiàn) ) 分析與處理:這類錯誤通常是由于括號不匹配引起的。Define directi

11、ve needs an identifier(Define 指令必須有一個標識符)分析與處理: #define 后面的第一個非空格符必須是一個標識符, 若 該位置出現(xiàn)其它字符,則會引起此類錯誤。Division by zero ( 除數(shù)為零 ) 分析與處理: 當源文件的常量表達式出現(xiàn)除數(shù)為零的情況, 則會造成 此類錯誤。Do statement must have while(do 語句中必須有 While 關鍵字 )分析與處理:若源文件中包含了一個無 While 關鍵字的 do 語句,則 出現(xiàn)本錯誤。DO while statement missing ( (Do while 語句中漏掉了符

12、號 "(") 分析與處理:在 do 語句中,若 while 關鍵字后無左括號,則出現(xiàn)本 錯誤。 Do while statement missing ; (Do while 語句中掉了分號 ) 分析與處理:在DO語句的條件表達式中,若右括號后面無分號則出 現(xiàn)此類錯誤。Duplicate Case (Case 情況不唯一 )分析與處理: Switch 語句的每個 case 必須有一個唯一的常量表達式 值。否則導致此類錯誤發(fā)生。Enum syntax error (Enum 語法錯誤 )分析與處理:若enum說明的標識符表格式不對,將會引起此類錯誤 發(fā)生。Enumeration

13、 constant syntax error ( 枚舉常量語法錯誤 )分析與處理:若賦給enum類型變量的表達式值不為常量,則會導致 此類錯誤發(fā)生。Error Directive : xxxx (Error 指令: xxxx)分析與處理:源文件處理 #error 指令時,顯示該指令指出的信息Error Writing output file ( 寫輸出文件錯誤 )分析與處理: 這類錯誤通常是由于磁盤空間已滿, 無法進行寫入操作 而造成。Expression syntax error ( 表達式語法錯誤 )分析與處理: 本錯誤通常是由于出現(xiàn)兩個連續(xù)的操作符, 括號不匹配 或缺少括號、前一語句漏掉

14、了分號引起的。Extra parameter in call ( 調(diào)用時出現(xiàn)多余參數(shù) )分析與處理: 本錯誤是由于調(diào)用函數(shù)時, 其實際參數(shù)個數(shù)多于函數(shù)定 義中的參數(shù)個數(shù)所致。Extra parameter in call to xxxxxx( 調(diào)用 xxxxxxxx 函數(shù)時出現(xiàn)了多余參數(shù) )File name too long ( 文件名太長 )分析與處理: #include 指令給出的文件名太長,致使編譯程序無法處理,則會出現(xiàn)此類錯誤。通常 DOST的文件名長度不能超過64個 字符。For statement missing ) (For 語名缺少 ")")分析與處理:在

15、 for 語句中,如果控制表達式后缺少右括號,則會 出現(xiàn)此類錯誤。For statement missing( (For 語句缺少 "(")For statement missing ; (For 語句缺少 " ;")分析與處理:在 for 語句中,當某個表達式后缺少分號,則會出現(xiàn) 此類錯誤。( 函數(shù)定義位置錯誤 )Function call missing) ( 函數(shù)調(diào)用缺少 ")") 分析與處理:如果函數(shù)調(diào)用的參數(shù)表漏掉了右手括號或括號不匹配, 則會出現(xiàn)此類錯誤。( 函數(shù)不Function definition out of pl

16、aceFunction doesn't take a variable number of argument接受可變的參數(shù)個數(shù) )Goto statement missing label(Goto語句缺少標號 )If statement missing(If語句缺少"(")If statement missing)(If語句缺少")")lllegal initalization( 非法初始化 )lllegal octal digit( 非法八進制數(shù) )分析與處理:此類錯誤通常是由于八進制常數(shù)中包含了非八進制數(shù)字( 非法指針相減 )所致。llleg

17、al pointer subtractionlllegal use of pointer( 指針使用非法 )Improper use of a typedef symbol(typedef 符號使用不當 )Incompatible storage class( 不相容的存儲類型 )Incompatible type conversion( 不相容的類型轉(zhuǎn)換 )Incorrect commadn line argument:xxxxxx( 不正確的命令行參數(shù):xxxxxxx)Incorrect commadnfileargument:xxxxxx ( 不正確的配置文件參數(shù):xxxxxxx)Inc

18、orrect number format( 不正確的數(shù)據(jù)格式 )Incorrect use of default(deflult 不正確使用 )Initializer syntax error( 初始化語法錯誤 )Invaild indrection ( 無效的間接運算 )Invalid macro argument separator( 無效的宏參數(shù)分隔符 )Invalid pointer addition( 無效的指針相加 )Macro argument syntax error ( 宏參數(shù)語法錯誤 )Macro expansion too long ( 宏擴展太長 )Mismatch n

19、umber of parameters in definition( 定義中參數(shù)個數(shù)不匹配)Misplaced break (break 位置錯誤 )Misplaced continue ( 位置錯 )Misplaced decimal point ( 十進制小數(shù)點位置錯 )Misplaced else (else 位置錯 )Misplaced else driective (clse 指令位置錯 )Misplaced endif directive(endif 指令位置錯 )Must be addressable ( 必須是可編址的 )Must take address of memory

20、location( 必須是內(nèi)存一地址 )No file name ending ( 無文件終止符 )No file names given ( 未給出文件名 )Non-protable pointer assignment( 對不可移植的指針賦值 )Non-protable pointer comparison( 不可移植的指針比較 )Non-protable return typeconversion ( 不可移植的返回類型轉(zhuǎn)換 )Not an allowed type ( 不允許的類型 )Out of memory ( 內(nèi)存不夠 )Pointer required on left side

21、 of( 操作符左邊須是一指針 )Redeclaration of 'xxxxxx' ('xxxxxx' 重定義 )Size of structure or array not known( 結(jié)構或數(shù)組大小不定 )Statement missing ; ( 語句缺少“;”)Structure or union syntax error( 結(jié)構或聯(lián)合語法錯誤 )Structure size too large( 結(jié)構太大 )Subscription missing ( 下標缺少 ')Switch statement missing( (switch 語句缺

22、少 "(")Switch statement missing )(switch 語句缺少 ")")Too few parameters in call( 函數(shù)調(diào)用參數(shù)太少 )Too few parameter in call to'xxxxxx'( 調(diào)用 'xxxxxx' 時參數(shù)太少 )Too many cases (Cases 太多 )Too many decimal points ( 十進制小數(shù)點太多 )Too many default cases (defaut 太多 )Too many exponents ( 階碼

23、太多 )Too many initializers ( 初始化太多 )Too many storage classes in declaration( 說明中存儲類太多 )Too many types in decleration ( 說明中類型太多 )Too much auto memory in function ( 函數(shù)中自動存儲太多 )Too much global define in file ( 文件中定義的全局數(shù)據(jù)太多 )Two consecutive dots ( 兩個連續(xù)點 )Type mismatch in parameter #( 參數(shù) "#" 類型不

24、匹配 )Type mismatch in parameter # in call to 'XXXXXXX'( 調(diào)用'XXXXXXX時參數(shù)#類型不匹配)Type missmatch in parameter 'XXXXXXX'(參數(shù)'XXXXXXX 類型不匹 配)Type mismatch in parameter 'YYYYYYYY'in call to 'YYYYYYYY(' 調(diào)用'YYYYYYY時參數(shù)'XXXXXXXX數(shù)型不匹配)Type mismatch in redeclaration of

25、 'XXX' ( 重定義類型不匹配 )Unable to creat output file 'XXXXXXXX.XXX' ( 不能創(chuàng)建輸出文件 'XXXXXXXX.XXX')Unable to create turboc.lnk ( 不能創(chuàng)建 turboc.lnk )Unable to execute command 'xxxxxxxx' ( 不能執(zhí)行 'xxxxxxxx' 命令 )Unable to open include file 'xxxxxxx.xxx'( 不能打開包含文件'xxxxxxxx.xxx')Una

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論