說(shuō)明:Turbo C 的源程序錯(cuò)誤分為三種類型:致命錯(cuò)誤、一般錯(cuò)誤和警告。其中,致命錯(cuò)誤通常是內(nèi)部編譯出錯(cuò);一般錯(cuò)誤指程序的語(yǔ)法錯(cuò)誤、磁盤或內(nèi)存存取錯(cuò)誤或命令行錯(cuò)誤等;警告則只是指出一些得懷疑的情況,它并不防止編譯的進(jìn)行。
下面按字母順序A~Z分別列出致命錯(cuò)誤及一般錯(cuò)誤信息,英漢對(duì)照及處理方法:
(一)、致命錯(cuò)誤英漢對(duì)照及處理方法:
A-B致命錯(cuò)誤
Bad call of in-line function (內(nèi)部函數(shù)非法調(diào)用)
分析與處理:在使用一個(gè)宏定義的內(nèi)部函數(shù)時(shí),沒(méi)能正確調(diào)用。一個(gè)內(nèi)部函數(shù)以兩個(gè)下劃線(__)開(kāi)始和結(jié)束。
Irreducable expression tree (不可約表達(dá)式樹(shù))
分析與處理:這種錯(cuò)誤指的是文件行中的表達(dá)式太復(fù)雜,使得代碼生成程序無(wú)法為它生成代碼。這種表達(dá)式必須避免使用。
Register allocation failure (存儲(chǔ)器分配失敗)
分析與處理:這種錯(cuò)誤指的是文件行中的表達(dá)式太復(fù)雜,代碼生成程序無(wú)法為它生成代碼。此時(shí)應(yīng)簡(jiǎn)化這種繁雜的表達(dá)式或干脆避免使用它。
(二)、一般錯(cuò)誤信息英漢照及處理方法
#operator not followed by maco argument name(#運(yùn)算符后沒(méi)跟宏變?cè)?
分析與處理:在宏定義中,#用于標(biāo)識(shí)一宏變串。“#”號(hào)后必須跟一個(gè)宏變?cè)?/P>
'xxxxxx' not anargument ('xxxxxx'不是函數(shù)參數(shù))
分析與處理:在源程序中將該標(biāo)識(shí)符定義為一個(gè)函數(shù)參數(shù),但此標(biāo)識(shí)符沒(méi)有在函數(shù)中出現(xiàn)。
Ambiguous symbol 'xxxxxx' (二義性符號(hào)'xxxxxx')
分析與處理:兩個(gè)或多個(gè)結(jié)構(gòu)的某一域名相同,但具有的偏移、類型不同。在變量或表達(dá)式中引用該域而未帶結(jié)構(gòu)名時(shí),會(huì)產(chǎn)生二義性,此時(shí)需修改某個(gè)域名或在引用時(shí)加上結(jié)構(gòu)名。
Argument # missing name (參數(shù)#名丟失)
分析與處理:參數(shù)名已脫離用于定義函數(shù)的函數(shù)原型。如果函數(shù)以原型定義,該函數(shù)必須包含所有的參數(shù)名。 Argument list syntax error (參數(shù)表出現(xiàn)語(yǔ)法錯(cuò)誤)
分析與處理:函數(shù)調(diào)用的參數(shù)間必須以逗號(hào)隔開(kāi),并以一個(gè)右括號(hào)結(jié)束。若源文件中含有一個(gè)其后不是逗號(hào)也不是右括號(hào)的參數(shù),則出錯(cuò)。
Array bounds missing (數(shù)組的界限符"]"丟失)
分析與處理:在源文件中定義了一個(gè)數(shù)組,但此數(shù)組沒(méi)有以下右方括號(hào)結(jié)束。
Array size too large (數(shù)組太大)
分析與處理:定義的數(shù)組太大,超過(guò)了可用內(nèi)存空間。
Assembler statement too long (匯編語(yǔ)句太長(zhǎng))
分析與處理:內(nèi)部匯編語(yǔ)句最長(zhǎng)不能超過(guò)480字節(jié)。
Bad configuration file (配置文件不正確)
分析與處理:TURBOC.CFG配置文件中包含的不是合適命令行選擇項(xiàng)的非注解文字。配置文件命令選擇項(xiàng)必須以一個(gè)短橫線開(kāi)始。
Bad file name format in include directive(包含指令中文件名格式不正確)
分析與處理:包含文件名必須用引號(hào)("filename.h")或尖括號(hào)(<filename>)括起來(lái),否則將產(chǎn)生本類錯(cuò)誤。如果使用了宏,則產(chǎn)生的擴(kuò)展文本也不正確,因?yàn)闊o(wú)引號(hào)沒(méi)辦法識(shí)別。
Bad ifdef directive syntax (ifdef指令語(yǔ)法錯(cuò)誤)
分析與處理:#ifdef必須以單個(gè)標(biāo)識(shí)符(只此一個(gè))作為該指令的體。
Bad ifndef directive syntax (ifndef指令語(yǔ)法錯(cuò)誤)
分析與處理:#ifndef 必須以單個(gè)標(biāo)識(shí)符(只此一個(gè))作為該指令的體。
Bad undef directive syntax (undef指令語(yǔ)法錯(cuò)誤)
分析與處理:#undef指令必須以單個(gè)標(biāo)識(shí)符(只此一個(gè))作為該指令的體。
Bad file size syntax (位字段長(zhǎng)語(yǔ)法錯(cuò)誤)
分析與處理:一個(gè)位字段長(zhǎng)必須是1―16位的常量表達(dá)式。
Call of non-functin (調(diào)用未定義函數(shù))
分析與處理:正被調(diào)用的函數(shù)無(wú)定義,通常是由于不正確的函數(shù)聲明或函數(shù)名拼錯(cuò)而造成。
Cannot modify a const object (不能修改一個(gè)長(zhǎng)量對(duì)象)
分析與處理:對(duì)定義為常量的對(duì)象進(jìn)行不合法操作(如常量賦值)引起本錯(cuò)誤。
Case outside of switch (Case 出現(xiàn)在switch外)
分析與處理:編譯程序發(fā)現(xiàn)Case語(yǔ)句出現(xiàn)在switch語(yǔ)句之外,這類故障通常是由于括號(hào)不匹配造成的。
Case statement missing (Case語(yǔ)句漏掉)
分析與處理:Case語(yǔ)必須包含一個(gè)以冒號(hào)結(jié)束的常量表達(dá)式,如果漏了冒號(hào)或在冒號(hào)前多了其它符號(hào),則會(huì)出現(xiàn)此類錯(cuò)誤。
Character constant too long (字符常量太長(zhǎng))
分析與處理:字符常量的長(zhǎng)度通常只能是一個(gè)或兩個(gè)字符長(zhǎng),超過(guò)此長(zhǎng)度則會(huì)出現(xiàn)這種錯(cuò)誤。
Compound statement missing (漏掉復(fù)合語(yǔ)句)
分析與處理:編譯程序掃描到源文件未時(shí),未發(fā)現(xiàn)結(jié)束符號(hào) (大括號(hào)),此類故障通常是由于大括號(hào)不匹配所致。
Conflicting type modifiers (類型修飾符沖突)
分析與處理:對(duì)同一指針,只能指定一種變址修飾符(如near 或far);而對(duì)于同一函數(shù),也只能給出一種語(yǔ)言修飾符(如Cdecl、pascal或interrupt)。
Constant expression required (需要常量表達(dá)式)
分析與處理:數(shù)組的大小必須是常量,本錯(cuò)誤通常是由于#define常量的拼寫錯(cuò)誤引起。
Could not find file 'xxxxxx.xxx' (找不到'xxxxxx.xx'文件)
分析與處理:編譯程序找不到命令行上給出的文件。
Declaration missing (漏掉了說(shuō)明)
分析與處理:當(dāng)源文件中包含了一個(gè)struct或 union域聲明,而后面漏掉了分號(hào),則會(huì)出現(xiàn)此類錯(cuò)誤。
Declaration needs type or storage class(說(shuō)明必須給出類型或存儲(chǔ)類)
分析與處理:正確的變量說(shuō)明必須指出變量類型,否則會(huì)出現(xiàn)此類錯(cuò)誤。
Declaration syntax error (說(shuō)明出現(xiàn)語(yǔ)法錯(cuò)誤)
分析與處理:在源文件中,若某個(gè)說(shuō)明丟失了某些符號(hào)或輸入多余的符號(hào),則會(huì)出現(xiàn)此類錯(cuò)誤。
Default outside of switch (Default語(yǔ)句在switch語(yǔ)句外出現(xiàn))
分析與處理:這類錯(cuò)誤通常是由于括號(hào)不匹配引起的。
Define directive needs an identifier (Define指令必須有一個(gè)標(biāo)識(shí)符)
分析與處理:#define 后面的第一個(gè)非空格符必須是一個(gè)標(biāo)識(shí)符,若該位置出現(xiàn)其它字符,則會(huì)引起此類錯(cuò)誤。
Division by zero (除數(shù)為零)
分析與處理:當(dāng)源文件的常量表達(dá)式出現(xiàn)除數(shù)為零的情況,則會(huì)造成此類錯(cuò)誤。
Do statement must have while (do語(yǔ)句中必須有While關(guān)鍵字)
分析與處理:若源文件中包含了一個(gè)無(wú)While關(guān)鍵字的 do語(yǔ)句,則出現(xiàn)本錯(cuò)誤。
DO while statement missing ( (Do while語(yǔ)句中漏掉了符號(hào) "(")
分析與處理:在do語(yǔ)句中,若 while關(guān)鍵字后無(wú)左括號(hào),則出現(xiàn)本錯(cuò)誤。 Do while statement missing;(Do while語(yǔ)句中掉了分號(hào))
分析與處理:在DO語(yǔ)句的條件表達(dá)式中,若右括號(hào)后面無(wú)分號(hào)則出現(xiàn)此類錯(cuò)誤。
Duplicate Case (Case情況不唯一)
分析與處理:Switch語(yǔ)句的每個(gè)case必須有一個(gè)唯一的常量表達(dá)式值。否則導(dǎo)致此類錯(cuò)誤發(fā)生。
Enum syntax error (Enum語(yǔ)法錯(cuò)誤)
分析與處理:若enum說(shuō)明的標(biāo)識(shí)符表格式不對(duì),將會(huì)引起此類錯(cuò)誤發(fā)生。
Enumeration constant syntax error (枚舉常量語(yǔ)法錯(cuò)誤)
分析與處理:若賦給enum類型變量的表達(dá)式值不為常量,則會(huì)導(dǎo)致此類錯(cuò)誤發(fā)生。
Error Directive : xxxx (Error指令:xxxx)
分析與處理:源文件處理#error指令時(shí),顯示該指令指出的信息。
Error Writing output file (寫輸出文件錯(cuò)誤)
分析與處理:這類錯(cuò)誤通常是由于磁盤空間已滿,無(wú)法進(jìn)行寫入操作而造成。
Expression syntax error (表達(dá)式語(yǔ)法錯(cuò)誤)
分析與處理:本錯(cuò)誤通常是由于出現(xiàn)兩個(gè)連續(xù)的操作符,括號(hào)不匹配或缺少括號(hào)、前一語(yǔ)句漏掉了分號(hào)引起的。
Extra parameter in call (調(diào)用時(shí)出現(xiàn)多余參數(shù))
分析與處理:本錯(cuò)誤是由于調(diào)用函數(shù)時(shí),其實(shí)際參數(shù)個(gè)數(shù)多于函數(shù)定義中的參數(shù)個(gè)數(shù)所致。
Extra parameter in call to xxxxxx(調(diào)用xxxxxxxx函數(shù)時(shí)出現(xiàn)了多余參數(shù))
File name too long (文件名太長(zhǎng))
分析與處理:#include指令給出的文件名太長(zhǎng),致使編譯程序無(wú)法處理,則會(huì)出現(xiàn)此類錯(cuò)誤。通常DOS下的文件名長(zhǎng)度不能超過(guò) 64個(gè)字符。
For statement missing ) (For語(yǔ)名缺少")")
分析與處理:在 for語(yǔ)句中,如果控制表達(dá)式后缺少右括號(hào),則會(huì)出現(xiàn)此類錯(cuò)誤。
For statement missing( (For語(yǔ)句缺少"(")
For statement missing; (For 語(yǔ)句缺少";")
分析與處理:在 for語(yǔ)句中,當(dāng)某個(gè)表達(dá)式后缺少分號(hào),則會(huì)出現(xiàn)此類錯(cuò)誤。
Function call missing) (函數(shù)調(diào)用缺少")")
分析與處理:如果函數(shù)調(diào)用的參數(shù)表漏掉了右手括號(hào)或括號(hào)不匹配,則會(huì)出現(xiàn)此類錯(cuò)誤。
Function definition out ofplace (函數(shù)定義位置錯(cuò)誤)
Function doesn't take a variable number of argument(函數(shù)不接受可變的參數(shù)個(gè)數(shù))
Goto statement missing label (Goto語(yǔ)句缺少標(biāo)號(hào))
If statement missing( (If語(yǔ)句缺少"(")
If statement missing) (If語(yǔ)句缺少")")
lllegal initalization (非法初始化)
lllegal octal digit (非法八進(jìn)制數(shù))
分析與處理:此類錯(cuò)誤通常是由于八進(jìn)制常數(shù)中包含了非八進(jìn)制數(shù)字所致。
lllegal pointer subtraction (非法指針相減)
lllegal structure operation (非法結(jié)構(gòu)操作)
lllegal use of floating point (浮點(diǎn)運(yùn)算非法)
lllegal use of pointer (指針使用非法)
Improper use of a typedef symbol (typedef符號(hào)使用不當(dāng))
Incompatible storage class (不相容的存儲(chǔ)類型)
Incompatible type conversion (不相容的類型轉(zhuǎn)換)
Incorrect commadn line argument:xxxxxx (不正確的命令行參數(shù):xxxxxxx)
Incorrect commadn file argument:xxxxxx (不正確的配置文件參數(shù):xxxxxxx)
Incorrect number format (不正確的數(shù)據(jù)格式)
Incorrect use of default (deflult不正確使用)
Initializer syntax error (初始化語(yǔ)法錯(cuò)誤)
Invaild indrection (無(wú)效的間接運(yùn)算)
Invalid macro argument separator (無(wú)效的宏參數(shù)分隔符)
Invalid pointer addition (無(wú)效的指針相加)
Invalid use of dot (點(diǎn)使用錯(cuò))
Macro argument syntax error (宏參數(shù)語(yǔ)法錯(cuò)誤)
Macro expansion too long (宏擴(kuò)展太長(zhǎng))
Mismatch number of parameters in definition(定義中參數(shù)個(gè)數(shù)不匹配)
Misplaced break (break位置錯(cuò)誤)
Misplaced continue (位置錯(cuò))
Misplaced decimal point (十進(jìn)制小數(shù)點(diǎn)位置錯(cuò))
Misplaced else (else 位置錯(cuò))
Misplaced else driective (clse指令位置錯(cuò))
Misplaced endif directive (endif指令位置錯(cuò))
Must be addressable (必須是可編址的)
Must take address of memory location (必須是內(nèi)存一地址)
No file name ending (無(wú)文件終止符)
No file names given (未給出文件名)
Non-protable pointer assignment (對(duì)不可移植的指針賦值)
Non-protable pointer comparison (不可移植的指針比較)
Non-protable return type conversion (不可移植的返回類型轉(zhuǎn)換)
Not an allowed type (不允許的類型)
Out of memory (內(nèi)存不夠)
Pointer required on left side of (操作符左邊須是一指針)
Redeclaration of 'xxxxxx' ('xxxxxx'重定義)
Size of structure or array not known (結(jié)構(gòu)或數(shù)組大小不定)
Statement missing; (語(yǔ)句缺少“;”)
Structure or union syntax error (結(jié)構(gòu)或聯(lián)合語(yǔ)法錯(cuò)誤)
Structure size too large (結(jié)構(gòu)太大)
Subscription missing ] (下標(biāo)缺少‘]')
Switch statement missing ( (switch 語(yǔ)句缺少"(")
Switch statement missing ) (switch 語(yǔ)句缺少")")
Too few parameters in call (函數(shù)調(diào)用參數(shù)太少)
Too few parameter in call to'xxxxxx'(調(diào)用'xxxxxx'時(shí)參數(shù)太少)
Too many cases (Cases太多)
Too many decimal points (十進(jìn)制小數(shù)點(diǎn)太多)
Too many default cases (defaut太多)
Too many exponents (階碼太多)
Too many initializers (初始化太多)
Too many storage classes in declaration (說(shuō)明中存儲(chǔ)類太多)
Too many types in decleration (說(shuō)明中類型太多)
Too much auto memory in function (函數(shù)中自動(dòng)存儲(chǔ)太多)
Too much global define in file (文件中定義的全局?jǐn)?shù)據(jù)太多)
Two consecutive dots (兩個(gè)連續(xù)點(diǎn))
Type mismatch in parameter # (參數(shù)"#"類型不匹配)
Type mismatch in parameter # in call to 'XXXXXXX' (調(diào)用'XXXXXXX'時(shí)參數(shù)#類型不匹配)
Type missmatch in parameter 'XXXXXXX' (參數(shù)'XXXXXXX'類型不匹配)
Type mismatch in parameter 'YYYYYYYY' in call to 'YYYYYYYY'(調(diào)用'YYYYYYY'時(shí)參數(shù)'XXXXXXXX'數(shù)型不匹配)
Type mismatch in redeclaration of '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' (不能打開(kāi)包含文件'xxxxxxxx.xxx')
Unable to open inputfile 'xxxxxxx.xxx' (不能打開(kāi)輸入文件'xxxxxxxx.xxx')
Undefined label 'xxxxxxx' (標(biāo)號(hào)'xxxxxxx'未定義)
Undefined structure 'xxxxxxxxx' (結(jié)構(gòu)'xxxxxxxxxx'未定義)
Undefined symbol 'xxxxxxx' (符號(hào)'xxxxxxxx'未定義)
Unexpected end of file in comment started on line #(源文件在某個(gè)注釋中意外結(jié)束)
Unexpected end of file in conditional stated on line # (源文件在#行開(kāi)始的條件語(yǔ)句中意外結(jié)束)
Unknown preprocessor directive 'xxx' (不認(rèn)識(shí)的預(yù)處理指令:'xxx')Untermimated character constant (未終結(jié)的字符常量)
Unterminated string (未終結(jié)的串)
Unterminated string or character constant(未終結(jié)的串或字符常量)
User break (用戶中斷)
Value required (賦值請(qǐng)求)
While statement missing ( (While語(yǔ)句漏掉 '(')
While statement missing ) (While語(yǔ)句漏掉 ')')
Wrong number of arguments in of 'xxxxxxxx' (調(diào)用'xxxxxxxx'時(shí)參數(shù)個(gè)數(shù)錯(cuò)誤)
新聞熱點(diǎn)
疑難解答
圖片精選