c语言错误代码_第1页
c语言错误代码_第2页
c语言错误代码_第3页
c语言错误代码_第4页
c语言错误代码_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、编译器错误 C2001  错误消息                           常数中有换行符                          字符串常数不能继续到第二行,除非进行下列操作: 

2、;                         用反斜杠结束第一行。                         用一个双引号结束第一行上的字符串,并在下一行用另一个双引号开始该字符串。         

3、0;                用 n 结束第一行是不够的。 编译器错误 C2002  错误消息                          无效的宽字符常数            

4、0;             多字节字符常数是非法的。                          通过检查下面的可能原因进行修复                      

5、   1.宽字符常数包含的字节比需要的多。                         2.未包括标准头文件 STDDEF.h。                         3.宽字符不能与一般字符串连接。     

6、60;                   4.宽字符常数之前必须是字符“L”: 编译器错误 C2003  错误消息                          应输入“defined id”        

7、60;                 标识符必须跟在预处理器关键字之后。编译器错误 C2004  错误消息                          应为“defined(id)”          

8、                标识符必须出现在预处理器关键字之后的括号中。                          也可能由于为 Visual Studio .NET 2003 进行的编译器一致性工作生成此错误:在预处理器指令中缺少括号。      

9、0;                   如果预处理器指令缺少右括号,则编译器将生成一个错误。编译器错误 C2005  错误消息                          #line 应跟一个行号,却找到“token”     &#

10、160;                    #line 指令后面必须跟行号。编译器错误 C2006  错误消息                          “directive”应输入文件名,却找到“token”    

11、                       诸如 #include 或 #import 等指令需要文件名。若要解决该错误,请确保 token 是一个有效文件名。并且将该文件名放在双引号或尖括号中。 编译器错误 C2007  错误消息                     &#

12、160;    #define 语法                          #define 后未出现标识符。若要解决该错误,请使用标识符。 编译器错误 C2008   错误消息                    &

13、#160;     “character”: 宏定义中的意外                           该字符紧跟在宏名之后。若要解决该错误,宏名之后必须有一个空格。 编译器错误 C2009   错误消息               

14、60;           宏形式“identifier”重复使用                           宏定义的形参表多次使用该标识符。宏的参数列表中的标识符必须是唯一的。 编译器错误 C2010   错误消息          &#

15、160;                 “character”: 宏形参表中的意外                            该字符在宏定义的形参表中使用不正确。移除该字符以解决该错误。编译器错误 C2011   错误消息      &

16、#160;                     “identifier”:“type”类型重定义                            该标识符已定义为 type 类型。如果多次将某个类型库导入同一个文件,也可能生成 C2011。编译器错误 C2012

17、0;  错误消息                           在“<”之后缺少名称                           #include 指令缺少所需的文件名。编译器错误 C2013  &#

18、160;错误消息                           缺少“>”                           #include 指令缺少右尖括号。添加右尖括号以解决该错误。 编译器错误 C2014&#

19、160;  错误消息                           预处理器命令必须作为第一个非空白空间启动                           预处理器指令的 # 符号必须是非空白行上的第一个字符。

20、0;编译器错误 C2015   错误消息                            常数中的字符太多                           一个字符常数包含的字符多于两个。标准字符常数

21、只能包含一个字符,长字符常数只能包含两个字符。                           转义序列(如 t)将被转换为单个字符。                           当使用 Microsoft 扩展将字符常数转换为

22、整数时,也可能发生 C2015。编译器错误 C2017   错误消息                           非法的转义序列                           转义序列(如 t)出现在字符或

23、字符串常数之外。                           当 stringize 运算符与包括转义序列的字符串一起使用时会发生 C2017。编译器错误 C2018   错误消息                        &#

24、160;  未知字符“hexnumber”                           源文件包含一个意外的 ASCII 字符,该字符由其十六进制数标识。若要解决该错误,请移除该字符。编译器错误 C2019   错误消息                  

25、60;        应找到预处理器指令,却找到“character”                           该字符跟在 # 符号的后面,但它不是预处理器指令的第一个字母。 编译器错误 C2020   错误消息             

26、              “member”:“class”成员重定义                           从基类或结构继承的成员被重定义。不能重定义继承成员,除非它在基类中被声明为 virtual。编译器错误 C2021   错误消息     

27、0;                     应输入指数值,而非“character”                           用作浮点常数的指数的字符是一个无效数字。确保使用的指数在范围之内。 编译器错误 C2022   错误消息

28、60;                         “number”: 对字符来说太大                           字符或字符串常数中跟在反斜杠 () 后面的八进制数字太大,不能表示字符。编译器错误 C2026 

29、  错误消息                             字符串太大,已截断尾部字符                           该字符串的长度超过了 16380 个单字节字符的*。

30、0;                          连接相邻字符串之前,字符串的长度不能超过 16380 个单字节字符。                           大约为此长度的一半的 Unicode 字符串也会生成此错误。编译器错误

31、C2027   错误消息                            使用了未定义类型“type”                           类型只有经过定义才能使用。若要解决该错误,请确保

32、在引用类型前已对其进行了完全定义。                           有可能声明一个指向已声明但未定义的类型的指针。但是 Visual C+ 不允许引用未定义的类型。编译器错误 C2028   错误消息                    

33、        结构/联合成员必须在结构/联合中                           结构或联合成员必须在结构或联合内部声明。编译器错误 C2030   错误消息                   &#

34、160;        “identifier”: 结构/联合成员重定义                            结构或联合将同一标识符用于多个成员。编译器错误 C2032   错误消息                

35、0;           “identifier”: 函数不能是结构/联合“structorunion”的成员                           该结构或联合中的一个成员函数在 C+ 中允许使用而在 C 中却不允许。若要解决该错误,请编译为 C+ 程序或移除该成员函数。 编译器错误 C2033  &#

36、160;错误消息                            “identifier”: 位域不能有间接寻址                           该位域被声明为指针,这是不允许的。编译器错误 C2034&

37、#160;  错误消息                            “identifier”: 位域类型对于位数太小                            该位域声明中位的数目超过了基类型的大小

38、。 编译器错误 C2036   错误消息                            “identifier”: 未知的大小                            对 ide

39、ntifier 的操作需要数据对象的大小,而该大小无法确定。 编译器错误 C2039   错误消息                            “identifier1”: 不是“identifier2”的成员                  &#

40、160;        该代码错误调用或引用了结构、类或联合的成员。编译器错误 C2040   错误消息                            “operator”:“identifier1”与“identifier2”的间接寻址级别不同         

41、0;                 涉及该运算符的表达式具有不一致的间接寻址级别。                           如果两个操作数都是算术的或都是非算术的(如数组或指针),则不用更改就可使用它们。如果一个操作数是算术的,而另一个不是,则算术运算符将转换为非算术类型。编译器错误 C2041

42、   错误消息                            非法的数字“character”(用于基“number”)                              &

43、#160;         指定的字符不是基(如八进制或十六进制)的有效数字。编译器错误 C2042   错误消息                            signed/unsigned 关键字互相排斥              

44、60;            在单个声明中使用关键字 signed 和 unsigned。 编译器错误 C2043   错误消息                            非法 break           

45、0;                             break 仅在 do、for、while 或 switch 语句中合法。编译器错误 C2044   错误消息                       

46、    非法 continue                                         continue 仅在 do、for 或 while 语句中合法。编译器错误 C2045   错误消息      &#

47、160;                     “identifier”: 标签重定义                            该标签出现在同一函数中的多条语句之前。 编译器错误 C2046   错误消息   &#

48、160;                        非法的 case                                       关键字 case 只能出现在

49、switch 语句中。编译器错误 C2047   错误消息                            非法的 default                             

50、60;          关键字 default 仅能出现在 switch 语句中。编译器错误 C2048   错误消息                            默认值多于一个                

51、;           switch 语句包含多个 default 标签。删除其中一个 default 标签可解决该错误。 编译器错误 C2050   错误消息                            switch 表达式不是整型       

52、                   switch 表达式计算结果为一个非整数值。若要解决该错误,请在 switch 语句中只使用整数值。 编译器错误 C2051   错误消息                            case 表达式不

53、是常数                           Case 表达式必须是整数常数。 编译器错误 C2052   错误消息                            “type”:

54、 非法的 case 表达式类型                           Case 表达式必须是整数常数。编译器错误 C2053   错误消息                            “

55、identifier”: 宽字符串不匹配                           宽字符串被分配给了一个不兼容的类型。 编译器错误 C2054   错误消息                         &

56、#160;  在“identifier”之后应输入“(”                           该函数标识符用在需要尾部括号的上下文中。                           导致该错误的可能原因是省略

57、了复杂初始化上的等号 (=)。编译器错误 C2055   错误消息                           应输入形参表,而不是类型表                           函数定义包含参数类型

58、列表而不包含形参表。ANSI C 需要命名的形参,除非它们是 void 或是省略号 (.)。 编译器错误 C2056   错误消息                            非法表达式                     &

59、#160;     表达式因前一个错误而无效。编译器错误 C2057   错误消息                            应输入常数表达式                        

60、;   上下文要求常数表达式,即其值在编译时已知的表达式。编译器错误 C2058   错误消息                            常数表达式不是整型                       

61、60;   该上下文需要整数常数表达式。编译器错误 C2059   错误消息                            语法错误 :“token”                        &#

62、160;  该标记导致语法错误。                           若要确定原因,则不仅要检查在错误信息中列出的行,还要检查该行上面的行。下面的示例对声明 j 的行生成了错误信息,而该错误的真正源却出现在其上面的行中。                    &#

63、160;      如果对行的检查没有获得有关可能出现的问题的任何线索,则尝试注释掉在错误信息中列出的行以及可能出现在该行上面的若干行。                           如果该错误信息在紧跟 typedef 变量的符号上出现,则检查该变量是否已在源代码中定义。           

64、0;               如果符号没有计算出任何结果(在使用 /Dsymbol= 编译时可能发生),可能会导致 C2059。                          可能收到 C2059 的另一个特定原因是编译在函数的默认参数中指定了结构的应用程序。参数的默认值必须是一个表达式。初始值设定项列表(如用

65、于初始化结构的初始值设定项列 表)不是表达式。其解决方法是定义一个执行所需初始化的构造函数。编译器错误 C2060   错误消息                            语法错误 : 遇到文件结束                     

66、;      至少还需要一个标记。编译器错误 C2061   错误消息                            语法错误: 标识符“identifier”                     

67、      编译器发现了不应在此出现的标识符。请确保在使用 identifier 之前对其进行声明。                          初始值设定项可能括在了括号中。为避免该问题,请将声明符括在括号中或使其成为 typedef。               

68、60;           在编译器将表达式作为类模板参数检测时也可能导致此错误;使用 typename 告诉编译器它是一个类型。编译器错误 C2062   错误消息                            意外的类型“type”         

69、;                  编译器不需要类型名称。                           编译器处理构造函数的参数列表中未定义类型的方式也可能导致 C2062。如果编译器遇到未定义的(拼错了吗?)类型,则它假定构造函数是一个表达式,并发出 C2062。若要解决此错误,请只使用

70、构造函数参数列表中的定义类型。编译器错误 C2063   错误消息                            “identifier”: 不是函数                           

71、;该标识符用作函数,但未声明为函数。 编译器错误 C2064   错误消息                            项不会计算为接受“number”个参数的函数                        

72、;   通过表达式调用了函数。该表达式未计算为函数指针。编译器错误 C2065   错误消息                            “identifier”: 未声明的标识符                     

73、;      在可使用变量的类型前必须在声明中指定它。在可以使用函数前必须在声明或原型中指定该函数使用的参数。                           可能的原因:                       

74、0;  1.您正在用 C 运行库的调试版本进行编译,在 for 循环中声明标准 C+ 库迭代器变量,然后尝试在 for 循环范围外使用该迭代器变量。 用 C 运行库的调试版本编译标准 C+ 库代码暗指使用 /Zc:forScope。有关更多信息,请参见调试迭代器支持。                          2.可能正在调用当前不受生成环境支持的 SDK 头文件中的函数。  &

75、#160;                       3.省略必要的包含文件,尤其是在定义 VC_EXTRALEAN、WIN32_LEAN_AND_MEAN 或 WIN32_EXTRA_LEAN 时。这些符号从 windows.h 和 afxv_w32.h 中排除了一些头文件以加快编译。(在 windows.h 和 afxv_w32.h 中查找排除的头文件的最新说明。)       

76、                  4.标识符名拼写错误。                          5.标识符使用了错误的大小写字母。                 &

77、#160;        6.字符串常数的后面缺少右引号。                          7.命名空间范围不正确。例如,若要解析 ANSI C+ 标准库函数和运算符,则必须用 using 指令指定 std 命名空间。下面的示例未能编译,因为 using 指令被注释掉,并且在 std 命名空间中定义了 cout: 编译器错误 C2

78、066   错误消息                            转换到函数类型是非法的                           在 ANSI C 中,函数指针和数据指针间的转换是非法的。

79、编译器错误 C2067   错误消息                            转换到数组类型是非法的                           对象被转换成了数组类型。编译器错误 C20

80、69   错误消息                            “void”项到非“void”项的强制转换                           类型 void 不能转换成任何其他类型。

81、编译器错误 C2070   错误消息                            “type”: 非法的 sizeof 操作数                           sizeof 运算符

82、需要一个表达式或类型名称。 编译器错误 C2071   错误消息                            “identifier”: 非法的存储类                         

83、  声明 identifier 所用的存储类无效。 编译器错误 C2072   错误消息                           “identifier”: 函数的初始化                     

84、60;     错误指定了函数初始值设定项。编译器错误 C2073   错误消息                           “identifier”: 部分初始化数组的元素必须有默认构造函数                  &#

85、160;        为用户定义的类型或常数的数组指定的初始值设定项太少。如果没有为数组成员指定明确的初始值设定项及其对应的构造函数,则必须提供默认的构造函数。编译器错误 C2074   错误消息                           “identifier”:“class-key”初始化需要大括号   

86、;                        在指定的类、结构或联合初始值设定项两边没有大括号。编译器错误 C2075   错误消息                            “identifier”: 数组初始化

87、需要大括号                           在指定的数组初始值设定项两边没有大括号。 编译器错误 C2077   错误消息                            非

88、标量字段初始值设定项“identifier”                           试图用非标量(结构、联合、数组或类)初始化位域。使用整数值或浮点值。编译器错误 C2078   错误消息                      &#

89、160;     初始值设定项太多                           初始值设定项的数目超过了要初始化的对象数。编译器错误 C2079   错误消息                       

90、;    “identifier”使用未定义的类/结构/联合“name”                           指定的标识符是一个未定义的类、结构或联合。                         

91、 初始化匿名联合时,可能会导致此错误。编译器错误 C2081   错误消息                            “identifier”: 形参表中的名称非法                       

92、0;   标识符导致语法错误。                           此错误可能是由使用形参表的旧形式导致的。必须在形参表中指定形参的类型。编译器错误 C2082   错误消息                     

93、0;      形参“identifier”的重定义                           在函数体中重新声明了函数的形参。若要解决该错误,请移除该重定义。 编译器错误 C2083   错误消息                

94、            结构/联合比较非法                           结构或联合直接与另一个用户定义的类型进行比较。这是不允许的,除非已经定义了比较运算符或者存在到标量类型的转换。编译器错误 C2084   错误消息        

95、                   函数“function”已有主体                           函数已经定义。                 

96、0;         在以前的 Visual C+ 版本中,                            编译器将接受解析为同一实际类型的多个模板的专用化,尽管附加的定义将永远不可用。现在编译器将检测这些多重定义。              

97、;              _int32 和 int 已被视为单独的类型。编译器现在将 _int32 作为 int 的同义词处理。这意味着,如果函数同时在 _int32 和 int 上重载,编译器将检测多个定义,并提供一个错误。编译器错误 C2085   错误消息                         &#

98、160; “identifier”: 不在形参表中                           该标识符在函数定义中声明而未在形参表中声明。(仅用于 ANSI C)编译器错误 C2086   错误消息                     

99、      “identifier”: 重定义                            多次定义了该标识符,或者后面的声明与前一个不同。                          

100、;  C2086 也可能是增量编译引用的 C# 程序集的结果。重新生成该 C# 程序集以解决此错误。编译器错误 C2087   错误消息                           “identifier”: 缺少下标                  

101、;         具有多个下标的数组的定义缺少大于 1 的维度的下标值。编译器错误 C2088   错误消息                            “operator”: 对于“class-key”非法            

102、60;              没有为结构或联合定义该运算符。该错误只对 C 代码有效。编译器错误 C2089   错误消息                           “identifier”:“class-key”太大        &

103、#160;                  指定的结构或联合超过 4GB 的*。编译器错误 C2090   错误消息                            函数返回数组                           函数不能返回数组。请返回指向数组的指针。 编译器错误 C2091   错误消息                     

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论