c语言错误的中英对照Word文档格式.docx

上传人:b****6 文档编号:21248889 上传时间:2023-01-28 格式:DOCX 页数:18 大小:20.78KB
下载 相关 举报
c语言错误的中英对照Word文档格式.docx_第1页
第1页 / 共18页
c语言错误的中英对照Word文档格式.docx_第2页
第2页 / 共18页
c语言错误的中英对照Word文档格式.docx_第3页
第3页 / 共18页
c语言错误的中英对照Word文档格式.docx_第4页
第4页 / 共18页
c语言错误的中英对照Word文档格式.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

c语言错误的中英对照Word文档格式.docx

《c语言错误的中英对照Word文档格式.docx》由会员分享,可在线阅读,更多相关《c语言错误的中英对照Word文档格式.docx(18页珍藏版)》请在冰豆网上搜索。

c语言错误的中英对照Word文档格式.docx

#definesyntax

#define语法错误

例如“#define”后缺少宏名,例如“#define”

errorC2008:

'

:

unexpectedinmacrodefinition

宏定义时出现了意外的xxx

宏定义时宏名与替换串之间应有空格,例如“#defineTRUE"

1"

C2009:

reuseofmacroformal'

带参宏的形式参数重复使用

宏定义如有参数不能重名,例如“#defines(a,a)(a*a)”中参数a重复

C2010:

character'

unexpectedinmacroformalparameterlist中文对照:

带参宏的参数表表现未知字符

例如“#define 

s(r|)r*r”中参数多了一个字符‘|’

C2014:

preprocessorcommandmuststartasfirstnonwhitespace中文对照:

预处理命令前面只允许空格

每一条预处理命令都应独占一行,不应出现其他非空格字符

errorC2015:

toomanycharactersinconstant

常量中包含多个字符

字符型常量的单引号中只能有一个字符,或是以

“\”开始的一个转义字符

errorC2017:

illegalescapesequence

转义字符非法

一般是转义字符位于'

或"

"

之外,例如“charerror='

\n;

C2018:

unknowncharacter'

0xhh'

未知的字符0xhh

一般是输入了中文标点符号,例如“charerror='

E'

”中“;

”为中文标点符号

errorC2019:

expectedpreprocessordirective,found'

期待预处理命令,但有无效字符

一般是预处理命令的#号后误输入其他无效字符,例如“#!

defineTRUE1”

C2021:

expectedexponentvalue,not'

期待指数值,不能是字符

一般是浮点数的指数表示形式有误,例如123.456E

errorC2039:

identifier1'

isnotamemberof'

idenifier2'

标识符1不是标识符的成员

程序错误地调用或引用结构体、共用体、类的成员

C2048:

morethanonedefault

default语句多于一个

switch语句中只能有一个default,删去多余的default

errorC2050:

switchexpressionnotintegral

switch表达式不是整型的

switch表达式必须是整型(或字符型),例如“switch("

a"

)”中表达式为字符串,这是非法的

errorC2051:

caseexpressionnotconstant

case表达式不是常量

case表达式应为常量表达式,例如“case"

”中“"

”为字符串,这是非法的

errorC2052:

type'

illegaltypeforcaseexpression

case表达式类型非法

case表达式必须是一个整型常量(包括字符型)

errorC2057:

expectedconstantexpression

期待常量表达式

一般是定义数组时数组长度为变量,例如“intn=10;

inta[n];

”中n为变量,是非法的

C2058:

constantexpressionisnotintegral

常量表达式不是整数

一般是定义数组时数组长度不是整型常量

errorC2059:

syntaxerror:

‘xxx’语法错误

引起错误的原因很多,可能多加或少加了符号xxx

C2064:

termdoesnotevaluatetoafunction

无法识别函数语言

1、函数参数有误,表达式可能不正确,例如“sqrt(s(s-a)(s-b)(s-c));

”中表达式不正确

2、变量与函数重名或该标识符不是函数,例如“inti,j;

j=i();

”中i不是函数

errorC2065:

undeclaredidentifier

未定义的标识符xxx

1、如果xxx为cout、cin、scanf、printf、sqrt等,则程序中包含头文件有误

2、未定义变量、数组、函数原型等,注意拼写错误或区分大小写。

errorC2078:

toomanyinitializers

初始值过多

一般是数组初始化时初始值的个数大于数组长度,例如“int 

b[2]={1,2,3};

errorC2082:

redefinitionofformalparameter'

重复定义形式参数xxx

函数首部中的形式参数不能在函数体

中再次被定义

C2084:

function'

alreadyhasabody

已定义函数xxx

在VC++早期版本中函数不能重名,6.0中支持函数的重载,函数名相同但参数不一样

errorC2086:

redefinition

标识符xxx重定义

变量名、数组名重名

errorC2087:

<

Unknown>

missingsubscript

下标未知

一般是定义二维数组时未指定第二维的长度,例如“inta[3][];

errorC2100:

illegalindirection

非法的间接访问运算符“*”

对非指针变量使用“*”运算

errorC2105:

operator'

needsl-value

操作符需要左值

例如“(a+b)++;

”语句,“++”运算符无效

errorC2106:

leftoperandmustbel-value

操作符的左操作数必须是左值

例如“a+b=1;

”语句,“=”运算符左值必须为变量,不能是表达式

errorC2110:

cannotaddtwopointers

两个指针量不能相加

例如“int*pa,*pb,*a;

a=pa+pb;

”中两个指针变量不能进行“+”运算

C2117:

arrayboundsoverflow

数组xxx边界溢出

一般是字符数组初始化时字符串长度大于字符数组长度,例如“charstr[4]= 

"

abcd"

;

C2118:

negativesubscriptorsubscriptistoolarge

下标为负或下标太大

一般是定义数组或引用数组元素时下标不正确

errorC2124:

divideormodbyzero

被零除或对0求余分析:

例如“inti=1/0;

”除数为0

C2133:

unknownsize

数组xxx长度未知

一般是定义数组时未初始化也未指定数组长度,例如“inta[];

errorC2137:

emptycharacterconstant。

字符型常量为空

一对单引号“'

”中不能没有任何字符

errorC2143:

missing'

token1'

before'

token2'

errorC2146:

beforeidentifier'

在标识符或语言符号2前漏写语言符号1

可能缺少“{”、“)”或“;

”等语言符号

errorC2144:

)'

beforetype'

在xxx类型前缺少‘)’

一般是函数调用时定义了实参的类型

C2181:

illegalelsewithoutmatchingif

非法的没有与if相匹配的else

可能多加了“;

”或复合语句没有使用“{}”

C2196:

casevalue'

0'

alreadyused

case值0已使用

case后常量表达式的值不能重复出现

C2296:

%'

illegal,leftoperandhastype'

float'

errorC2297:

illegal,rightoperandhastype'

%运算的左(右)操作数类型为float,这是非法的

求余运算的对象必须均为int类型,应正确定义变量类型或使用强制类型转换

errorC2371:

redefinition;

differentbasictypes

标识符xxx重定义;

基类型不同

定义变量、数组等时重名

C2440:

='

cannotconvertfrom'

char[2]'

to'

char'

赋值运算,无法从字符数组转换为字符

不能用字符串或字符数组对字符型数据赋值,更一般的情况,类型无法转换

C2447:

missingfunctionheader(old-styleformallist?

C2448:

function-styleinitializerappearstobeafunction 

definition

缺少函数标题(是否是老式的形式表?

函数定义不正确,函数首部的“()”后多了分号或者采用了老式的C语言的形参表

errorC2450:

switchexpressionoftype'

isillegal

switch表达式为非法的xxx类型

switch表达式类型应为int或char

C2466:

cannotallocateanarrayofconstantsize0

不能分配长度为0的数组

一般是定义数组时数组长度为0

C2601:

localfunctiondefinitionsareillegal

函数xxx定义非法

一般是在一个函数的函数体中定义另一个函数

errorC2632:

type1'

followedby'

type2'

类型1后紧接着类型2,这是非法的

例如“intfloati;

”语句

C2660:

functiondoesnottakenparameters

函数xxx不能带n个参数

调用函数时实参个数不对,例如“sin(x,y);

errorC2676:

binary'

classistream_withassign'

doesnotdefinethisoperator 

oraconversiontoatypeacceptabletothepredefinedoperator

>

classostream_withassign'

“>

”、“<

”运算符使用错误,例如“cin<

x;

cout>

y;

C4716:

mustreturnavalue

函数xxx必须返回一个值

仅当函数类型为void时,才能使用没有返回值的返回命令。

LNK1104:

cannotopenfile"

Debug/Cpp1.exe"

无法打开文件Debug/Cpp1.exe

重新编译链接

LNK1168:

cannotopenDebug/Cpp1.exeforwriting

不能打开Debug/Cpp1.exe文件

一般是Cpp1.exe还在运行,未关闭

LNK1169:

oneormoremultiplydefinedsymbolsfound

出现一个或更多的多重定义符号。

一般与errorLNK2005一同出现

LNK2001:

unresolvedexternalsymbol_main

未处理的外部标识main

一般是main拼写错误,例如“voidmian()”

LNK2005:

_mainalreadydefinedinCpp1.obj

main函数已经在Cpp1.obj文件中定义

未关闭上一程序的工作空间,导致出现多个main函数

warning 

C4067:

unexpectedtokensfollowingpreprocessordirective-expectedanewline

预处理命令后出现意外的符号-期待新行

“#include<

iostream.h>

”命令后的“;

”为多余的字符

warningC4091:

ignoredonleftof'

whennovariableisdeclared中文:

当没有声明变量时忽略类型说明

语句“int;

”未定义任何变量,不影响程序执行

C4101:

unreferencedlocalvariable

变量xxx定义了但未使用

可去掉该变量的定义,不影响程序执行

warningC4244:

conversionfrom'

possiblelossofdata

赋值运算,从数据类型1转换为数据类型2,可能丢失数据

需正确定义变量类型,数据类型1为float或double、数据类型2为int时,结果有可能不正确,数据类型1为double、数据类型2为float时,不影响程序结果,可忽略该警告

warningC4305:

initializing'

truncationfrom'

constdouble'

初始化,截取双精度常量为float类型

出现在对float类型变量赋值时,一般不影响最终结果

warningC4390:

emptycontrolledstatementfound;

isthistheintent?

‘;

’控制语句为空语句,是程序的意图吗?

if语句的分支或循环控制语句的循环体为空语句,一般是多加了“;

C4508:

functionshouldreturnavalue;

void'

returntypeassumed

函数xxx应有返回值,假定返回类型为void

一般是未定义main函数的类型为void,不影响程序执行

warningC4552:

operatorhasnoeffect;

expectedoperatorwithside-effect

运算符无效果;

期待副作用的操作符

例如“i+j;

”语句,“+”运算无意义

warningC4553:

=='

didyouintend'

?

“==”运算符无效;

是否为“=”?

例如

“i==j;

语句,“==”运算无意义

warningC4700:

localvariable'

usedwithouthavingbeeninitialized

变量xxx在使用前未初始化

变量未赋值,结果有可能不正确,如果变量通过scanf函数赋值,则有可能漏写“&

”运算符,或变量通过cin赋值,语句有误

C4715:

notallcontrolpathsreturnavalue

函数xx不是所有控制路径都有返回值

一般是在函数的if语句中包含return语句,当if语句的条件不成立时没有返回值

warningC4723:

potentialdivideby0

有可能被0除

表达式值为0时不能作为除数

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1