Ambiguous operators need parentheses
創(chuàng)新互聯(lián)專注于建鄴企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計,商城網(wǎng)站開發(fā)。建鄴網(wǎng)站建設(shè)公司,為建鄴等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站制作,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
不明確的運(yùn)算,需要用括號括起來
Ambiguous symbol 'xxx'
不明確的符號
Argument list syntax error
參數(shù)表語法錯誤
Array bounds missing
丟失數(shù)組界限符
Array size too large
數(shù)組尺寸太大
Bad character in parameters
參數(shù)中有不適當(dāng)?shù)淖址?/p>
Bad file name format in include directive
包含命令中文件名格式不正確
Bad ifdef directive syntax
編譯預(yù)處理ifdef有語法錯誤
Bad ifndef directive syntax
編譯預(yù)處理ifndef有語法錯誤
Bad undef directive syntax
編譯預(yù)處理undef有語法錯誤
Call of non-function
調(diào)用未定義的函數(shù)
Call to function with no prototype
調(diào)用函數(shù)時沒有函數(shù)的說明
Cannot modify a const object
不允許修改常量對象
Case outside of switch
Case 出現(xiàn)在 switch 之外
Case statement missing
漏掉了 Case 語句
Case syntax error
Case 語法錯誤
Case outside of switch
Case 出現(xiàn)在 switch 之外
Case statement missing
漏掉了 Case 語句
Case syntax error
Case 語法錯誤
Code has no effect
代碼不可能執(zhí)行到
Compound statement missing }
復(fù)合語句漏掉了"}"
Conflicting type modifiers
不明確的類型說明符
Constant expression required
要求常量表達(dá)式
Constant out of range in comparison
在比較中常量超出范圍
Conversion may lose significant digits
轉(zhuǎn)換時會掉失有意義的數(shù)字
Conversion of near pointer not allowed
不允許轉(zhuǎn)換返指針
Could not find file 'xxx'
找不到xxx文件
Declaration missing ;
說明缺少分號";"
Declaration syntax error
說明中出現(xiàn)語法錯誤
Default outside of switch
default出現(xiàn)在switch語句之外
Define directive needs an identifier
定義編譯預(yù)處理需要標(biāo)識符
Division by zero
用零作除數(shù)
Do statement must have while
do-while語句中缺少while部分
Enum syntax error
枚舉類型語法錯誤
Enumeration constant syntax error
枚舉常數(shù)語法錯誤
Error directive: xxx
錯誤的編譯預(yù)處理命令
Error writing output file
寫輸出文件錯誤
Expression syntax error
表達(dá)式語法錯誤
Extra parameter in call
調(diào)用時出現(xiàn)多余錯誤
File name too long
文件名太長
Function call missing )
函數(shù)調(diào)用缺少右括號
Function definition out of place
函數(shù)定義位置錯誤
Function should return a value
函數(shù)返回一個值
Goto statement missing label
goto 語句沒有標(biāo)號
Hexadecimal or octal constant too large
16進(jìn)制或8進(jìn)制常數(shù)太大
Illegal character 'x'
非法字 x
Illegal initialization
非法的初始化
Illegal octal digit
非法的8進(jìn)制數(shù)字
Illegal pointer subtraction
非法的指針相減
Illegal structure operation
非法的結(jié)構(gòu)體操作
Illegal use of pointer
指針使用非法
Improper use of a typedef symbol
類型符號定義使用不恰當(dāng)
In-line assembly not allowed
不允許使用行間匯編
Incompatible storage class
存儲類別不相容
Incompatible type conversion
不相容的類型轉(zhuǎn)換
Incorrect number format
錯誤的數(shù)據(jù)格式
Incorrect use of default
default使用不正確
Invalid indirection
無效的間接運(yùn)算
Invalid pointer addition
指針相加無效
Irreducible expression tree
無法執(zhí)行的表達(dá)式運(yùn)算
Lvalur required
需要邏輯值(0或非0值)
Macro argument syntax error
宏參數(shù)語法錯誤
Macro expansion too long
宏的擴(kuò)展以后太長
Mismatched number of parameters in definition
定義中參數(shù)個數(shù)不匹配
Misplaced break
此處不應(yīng)出現(xiàn)break語句
Misplaced continue
此處不應(yīng)出現(xiàn)continue語句
Misplaced decimal point
此處不應(yīng)出現(xiàn)小數(shù)點
Misplaced elif directive
此處不應(yīng)出現(xiàn)編譯預(yù)處理elif
Misplaced else
此處不應(yīng)出現(xiàn)else
Misplaced else directive
此處不應(yīng)出現(xiàn)編譯預(yù)處理 else
Misplaced endif directive
此處不應(yīng)出現(xiàn)編譯預(yù)處理 endif
Must be addressable
必須是可以編址的
Must take address of memory location
必須存儲定位的地址
No declaration for function 'xxx'
沒有函數(shù) xxx 的說明
No stack
缺少堆棧
No type information
沒有類型信息
Non-portable pointer assignment
不可移動的指針(地址常數(shù))賦值
Non-portable pointer comparison
不可移動的指針(地址常數(shù))比較
Non-portable pointer conversion
不可移動的指針(地址常數(shù))轉(zhuǎn)換
Not a valid expression format type
不合法的表達(dá)式格式
Not an allowed type
不允許使用的類型
Numeric constant too large
數(shù)值常數(shù)太大
Out of memory
內(nèi)存不夠用
Parameter 'xxx' is never used
參數(shù) xxx 沒有用到
Pointer required on left side of -
- 符號的左邊必須是指針
Possible use of 'xxx' before definition
在定義之前就使用了 xxx(警告)
Possibly incorrect assignment
賦值可能不正確
Redefinition of 'xxx' is not identical
xxx 的兩次定義不一致
Register allocation failure
寄存器定址失敗
Repeat count needs an lvalue
重復(fù)計數(shù)需要邏輯值
Size of structure or array not known
結(jié)構(gòu)體或數(shù)組的大小不確定
Statement missing ;
語句后缺少";"
Structure or union syntax error
結(jié)構(gòu)體或聯(lián)合體語法錯誤
Structure size too large
結(jié)構(gòu)體的尺寸太大
Subscripting missing ]
下標(biāo)缺少右方括號
Superfluous with function or array
函數(shù)或數(shù)組中有多余的""
Suspicious pointer conversion
可疑的指針轉(zhuǎn)換
Symbol limit exceeded
符號超限
Too few parameters in call
函數(shù)調(diào)用時的實參少于函數(shù)的參數(shù)
Too many error or warning messages
錯誤或警告信息太多
Too much auto memory in function
函數(shù)中用到的局部存儲太多
Too much global data defined in file
文件中全局?jǐn)?shù)據(jù)太多
Too consecutive dots
兩個連續(xù)的句點
Type mismatch in parameter xxx
參數(shù)xxx類型不匹配
Type mismatch in redeclaration of 'xxx'
xxx 重定義時的類型不匹配
Unable to create output file 'xxx'
無法建立輸出文件 xxx
Unable to open include file 'xxx'
無法打開被包容的文件 xxx
Bit field too large
位字段太長
Unable to open input file 'xxx'
無法打開輸入文件 xxx
Undefined label 'xxx'
沒有定義的標(biāo)號 xxx
Undefined structure 'xxx'
沒有定義的結(jié)構(gòu) xxx
Undefined symbol 'xxx'
沒有定義的符號 xxx
Unexpected end of file in comment started on line xxx
從 xxx 行開始的注解尚未結(jié)束,文件不能結(jié)束
Unexpected end of file in conditional started on line xxx
從 xxx 行開始的條件語句尚未結(jié)束,文件不能結(jié)束
Unknown assembler instruction
未知的匯編結(jié)構(gòu)
Unknown option
未知的操作
Unknown preprocessor directive: 'xxx'
不認(rèn)識的預(yù)處理命令 xxx
Unreachable code
無法到達(dá)的代碼
Unterminated string or character constant
字符串缺少引號
User break
用戶強(qiáng)行中斷了程序
Void functions may not return a value
void 類型的函數(shù)不應(yīng)有返回值
Wrong number off arguments
調(diào)用函數(shù)時參數(shù)數(shù)目錯
'xxx' not an argument
xxx 不是參數(shù)
'xxx' not part of structure
xxx 不是結(jié)構(gòu)體的一部分
xxx statement missing (
xxx 語句缺少左括號
xxx statement missing )
xxx 語句缺少右括號
xxx statement missing ;
xxx 語句缺少分號
'xxx' declared but never used
說明了 xxx ,但沒有使用
'xxx' is assigned a value which is never used
給 xxx 賦了值,但未用過
Zero length structure
結(jié)構(gòu)體的長度為零
1、fatal error C1010: unexpected end of file while looking for precompiled header directive。
尋找預(yù)編譯頭文件路徑時遇到了不該遇到的文件尾。(一般是沒有#include "stdafx.h")
2、fatal error C1083: Cannot open include file: 'R…….h': No such file or directory
不能打開包含文件“R…….h”:沒有這樣的文件或目錄。
3、error C2011: 'C……': 'class' type redefinition
類“C……”重定義。
4、error C2018: unknown character '0xa3'
不認(rèn)識的字符'0xa3'。(一般是漢字或中文標(biāo)點符號)
5、error C2057: expected constant expression
希望是常量表達(dá)式。(一般出現(xiàn)在switch語句的case分支中)
6、error C2065: 'IDD_MYDIALOG' : undeclared identifier
“IDD_MYDIALOG”:未聲明過的標(biāo)識符。
7、error C2082: redefinition of formal parameter 'bReset'
函數(shù)參數(shù)“bReset”在函數(shù)體中重定義。
8、error C2143: syntax error: missing ':' before '{'
句法錯誤:“{”前缺少“;”。
9、error C2146: syntax error : missing ';' before identifier 'dc'
句法錯誤:在“dc”前丟了“;”。
10、error C2196: case value '69' already used
值69已經(jīng)用過。(一般出現(xiàn)在switch語句的case分支中)
11、error C2509: 'OnTimer' : member function not declared in 'CHelloView'
成員函數(shù)“OnTimer”沒有在“CHelloView”中聲明。
12、error C2511: 'reset': overloaded member function 'void (int)' not found in 'B'
重載的函數(shù)“void reset(int)”在類“B”中找不到。
13、error C2555: 'B::f1': overriding virtual function differs from 'A::f1' only by return type or calling convention
類B對類A中同名函數(shù)f1的重載僅根據(jù)返回值或調(diào)用約定上的區(qū)別。
14、error C2660: 'SetTimer' : function does not take 2 parameters
“SetTimer”函數(shù)不傳遞2個參數(shù)。
15、warning C4035: 'f……': no return value
“f……”的return語句沒有返回值。
16、warning C4553: '= =' : operator has no effect; did you intend '='?
沒有效果的運(yùn)算符“= =”;是否改為“=”?
17、warning C4700: local variable 'bReset' used without having been initialized
局部變量“bReset”沒有初始化就使用。
18、error C4716: 'CMyApp::InitInstance' : must return a value
“CMyApp::InitInstance”函數(shù)必須返回一個值。
19、LINK : fatal error LNK1168: cannot open Debug/P1.exe for writing
連接錯誤:不能打開P1.exe文件,以改寫內(nèi)容。(一般是P1.Exe還在運(yùn)行,未關(guān)閉)
20、error LNK2001: unresolved external symbol "public: virtual _ _thiscall C……::~C……(void)"
連接時發(fā)現(xiàn)沒有實現(xiàn)的外部符號(變量、函數(shù)等)。
function call missing argument list 調(diào)用函數(shù)的時候沒有給參數(shù)。
member function definition looks like a ctor, but name does not match enclosing class 成員函數(shù)聲明了但沒有使用
unexpected end of file while looking for precompiled header directive 在尋找預(yù)編譯頭文件時文件意外結(jié)束,編譯不正常終止可能造成這種情況
兩個問題:
1、scanf()中不能出現(xiàn)非變量的文字,你前面寫上“please enter a number:"和后面的”\n“都是錯誤的。建議你把輸入的那一句改成下面兩句:
printf("Please Enter a Number:");
scanf("%d",a);
2、你在聲明中變量a的類型是int,但在輸入時你又寫成了%f,二者類型不一致,出現(xiàn)錯誤。建議要么前面聲明為float a;要么后面打印的地方改成%d,二處必改之一處才行。
以上兩點都會使你的程序出現(xiàn)致命錯誤。
/zhidao.baidu.com/question/186344584.html
1.書寫標(biāo)識符時,忽略了大小寫字母的區(qū)別。
main()
{
int a=5;
printf("%d",A);
}
編譯程序把a(bǔ)和A認(rèn)為是兩個不同的變量名,而顯示出錯信息。C認(rèn)為大寫字母和小寫字母是兩個不同的字符。習(xí)慣上,符號常量名用大寫,變量名用小寫表示,以增加可讀性。
2.忽略了變量的類型,進(jìn)行了不合法的運(yùn)算。
main()
{
float a,b;
printf("%d",a%b);
}
%是求余運(yùn)算,得到a/b的整余數(shù)。整型變量a和b可以進(jìn)行求余運(yùn)算,而實型變量則不允許進(jìn)行“求余”運(yùn)算。
3.將字符常量與字符串常量混淆。
char c;
c="a";
在這里就混淆了字符常量與字符串常量,字符常量是由一對單引號括起來的單個字符,字符串常量是一對雙引號括起來的字符序列。C規(guī)定以“\”作字符串結(jié)束標(biāo)志,它是由系統(tǒng)自動加上的,所以字符串“a”實際上包含兩個字符:‘a(chǎn)'和‘\',而把它賦給一個字符變量是不行的。
4.忽略了“=”與“==”的區(qū)別。
在許多高級語言中,用“=”符號作為關(guān)系運(yùn)算符“等于”。如在BASIC程序中可以寫
if (a=3) then …
但C語言中,“=”是賦值運(yùn)算符,“==”是關(guān)系運(yùn)算符。如:
if (a==3) a=b;
前者是進(jìn)行比較,a是否和3相等,后者表示如果a和3相等,把b值賦給a。由于習(xí)慣問題,初學(xué)者往往會犯這樣的錯誤。
5.忘記加分號。
分號是C語句中不可缺少的一部分,語句末尾必須有分號。
a=1
b=2
編譯時,編譯程序在“a=1”后面沒發(fā)現(xiàn)分號,就把下一行“b=2”也作為上一行語句的一部分,這就會出現(xiàn)語法錯誤。改錯時,有時在被指出有錯的一行中未發(fā)現(xiàn)錯誤,就需要看一下上一行是否漏掉了分號。
{ z=x+y;
t=z/100;
printf("%f",t);
}
對于復(fù)合語句來說,最后一個語句中最后的分號不能忽略不寫(這是和PASCAL不同的)。
6.多加分號。
對于一個復(fù)合語句,如:
{ z=x+y;
t=z/100;
printf("%f",t);
};
復(fù)合語句的花括號后不應(yīng)再加分號,否則將會畫蛇添足。
又如:
if (a%3==0);
I++;
本是如果3整除a,則I加1。但由于if (a%3==0)后多加了分號,則if語句到此結(jié)束,程序?qū)?zhí)行I++語句,不論3是否整除a,I都將自動加1。
再如:
for (I=0;I5;I++);
{scanf("%d",x);
printf("%d",x);}
本意是先后輸入5個數(shù),每輸入一個數(shù)后再將它輸出。由于for()后多加了一個分號,使循環(huán)體變?yōu)榭照Z句,此時只能輸入一個數(shù)并輸出它。
7.輸入變量時忘記加地址運(yùn)算符“”。
int a,b;
scanf("%d%d",a,b);
這是不合法的。Scanf函數(shù)的作用是:按照a、b在內(nèi)存的地址將a、b的值存進(jìn)去?!癮”指a在內(nèi)存中的地址。
8.輸入數(shù)據(jù)的方式與要求不符。①scanf("%d%d",a,b);
輸入時,不能用逗號作兩個數(shù)據(jù)間的分隔符,如下面輸入不合法:
3,4
輸入數(shù)據(jù)時,在兩個數(shù)據(jù)之間以一個或多個空格間隔,也可用回車鍵,跳格鍵tab。
②scanf("%d,%d",a,b);
C規(guī)定:如果在“格式控制”字符串中除了格式說明以外還有其它字符,則在輸入數(shù)據(jù)時應(yīng)輸入與這些字符相同的字符。下面輸入是合法的:
3,4
此時不用逗號而用空格或其它字符是不對的。
3 4 3:4
又如:
scanf("a=%d,b=%d",a,b);
輸入應(yīng)如以下形式:
a=3,b=4
9.輸入字符的格式與要求不一致。
在用“%c”格式輸入字符時,“空格字符”和“轉(zhuǎn)義字符”都作為有效字符輸入。
scanf("%c%c%c",c1,c2,c3);
如輸入a b c
字符“a”送給c1,字符“ ”送給c2,字符“b”送給c3,因為%c只要求讀入一個字符,后面不需要用空格作為兩個字符的間隔。
10.輸入輸出的數(shù)據(jù)類型與所用格式說明符不一致。
例如,a已定義為整型,b定義為實型
a=3;b=4.5;
printf("%f%d\n",a,b);
編譯時不給出出錯信息,但運(yùn)行結(jié)果將與原意不符。這種錯誤尤其需要注意。
1、系統(tǒng)錯誤:這是指程序沒有語法錯誤和邏輯錯誤,但程序的正常運(yùn)行依賴于某些外部條件的存在,如果這些外部條件缺失,則程序?qū)⒉荒苓\(yùn)行。
2、語法錯誤:這是指程序中含有不符合語法規(guī)定的語句,例如關(guān)鍵字或符號書寫錯誤(將printf寫成print、將數(shù)組元素引用寫成a(2)等)、使用了未定義的變量、括號不配對等。
3、邏輯錯誤:這是指程序中沒有語法錯誤,可以通過編譯、連接生成可執(zhí)行程序,但程序運(yùn)行的結(jié)果與預(yù)期不相符的錯誤。
擴(kuò)展資料:
C語言程序的特點
1、采用結(jié)構(gòu)化的控制語句,是完全模塊化和結(jié)構(gòu)化的語言。
2、數(shù)據(jù)類型豐富,具有現(xiàn)代語言的各種數(shù)據(jù)結(jié)構(gòu)
3、語法限制不太嚴(yán)格,程序設(shè)計自由度大,同時也意味著容錯性差。
4、允許直接訪問屋里內(nèi)存,能進(jìn)行位操作,能實現(xiàn)匯編語言的大部分功能,可直接對硬件進(jìn)行操作,兼有高級和低級語言的特點。
5、目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高(比匯編程序生成的目標(biāo)代碼低10%-20%)
6、允許在編譯之前使用預(yù)處理命令,提高編程效率。
7、以內(nèi)存使用為核心。
8、C語言程序是由函數(shù)構(gòu)成的。一個源程序不論有多少個文件組成,包含多少個函數(shù),都有且一個 main 函數(shù),及主函數(shù)。一個程序總是從 main 函數(shù)開始執(zhí)行,而不論 main 函數(shù)在程序什么位置,程序的執(zhí)行也結(jié)束于主函數(shù),其他函數(shù)通過函數(shù)調(diào)用被執(zhí)行。
9、函數(shù)都要有類型說明,放在函數(shù)名前,如 void 表示空類型,沒有返回值。
10、函數(shù)體內(nèi)語句一般按四大功能順次排列,即首先對變量與函數(shù)做聲明 ——變量賦初值 ——數(shù)據(jù)計算與處理 ——輸出結(jié)果。