VC6.0常见编译错误提示附解决方法

  次阅读 来源:互联网(转载协议) 2016-01-26 10:12 我要评论(0)

这篇文章主要介绍了VC++6.0编译过程中常遇到的一些错误提示并给出了错误原因与分析,需要的朋友尅参考下

(1)error C2001: newline in constant

编号:C2001

直译:在常量中出现了换行。

错误分析:

1.①字符串常量、字符常量中是否有换行。

2.②在这句语句中,某个字符串常量的尾部是否漏掉了双引号。

3.③在这语句中,某个字符创常量中是否出现了双引号字符 " ,但是没有使用转义符 " 。

4.④在这句语句中,某个字符常量的尾部是否漏掉了单引号。

5.⑤是否在某句语句的尾部,或语句的中间误输入了一个单引号或双引号。

(2)error C2015: too many characters in constant

编号:C2015

直译:字符常量中的字符太多了。

错误分析:

单引号表示字符型常量。一般的,单引号中必须有且只能有一个字符(使用转义符时,转义符所表示的字符当作一个字符看待),如果单引号中的字符数多于4个,就会引发这个错误。

另外,如果语句中某个字符常量缺少右边的单引号,也会引发这个错误,例如:

if (x == 'x || x == 'y') {}

值得注意的是,如果单引号中的字符数是2-4个,编译不报错,输出结果是这几个字母的ASC码作为一个整数(int,4B)整体看待的数字。

(3)error C2137: empty character constant

编号:C2137

直译:空的字符定义。

错误分析:

原因是连用了两个单引号,而中间没有任何字符,这是不允许的。

(4)error C2018: unknown character '0x##'

编号:C2018

直译:未知字符 0x##'。

错误分析:

0x##是字符ASC码的16进制表示法。这里说的未知字符,通常是指全角符号、字母、数字,或者直接输入了汉字。如果全角字符和汉字用双引号包含起来,则成为字符串常量的一部分,是不会引发这个错误的。

(5)error C2041: illegal digit '#' for base '8'

编号:C2141

直译:在八进制中出现了非法的数字 #'(这个数字#通常是8或者9)。

错误分析:

如果某个数字常量以 0 开头(单纯的数字0除外),那么编译器会认为这是一个8进制数字。例如: 089 、 078 、 093 都是非法的,而071 是合法的,等同于是进制中的 57 。

(6)error C2065: 'xxxx' : undeclared identifier

编号:C2065

直译:标识符 xxxx 未定义。

错误分析:

首先,解释一下什么是标识符。标志符是程序中出现的除关键字 之外的词,通常由字母、数字和下划线组成,不能以数字开头,不能与关键字重复,并且区分大小写。变量名、函数名、类名、常量名等等,都是标志符。所有的标 志符都必须先定义,后使用。标志符有很多种用途,所以错误也有很多种原因。

1.如果 xxxx 是一个变量名,那么通常是程序员忘记了定义这个变量,或者拼写错误、大小写错误所引起的,所以,首先检查变量名是否正确。(关联:变量,变量定义)

2.如果 xxxx 是一个函数名,那就怀疑函数名是否没有定义。可能是拼写错误或大小写错误,当然,也有可能是你所调用的函数根本不存在。还有一种可能,你写的函数在你调用所在的函数之后,而你有没有在调用之前对函数原形进行申明。(关联:函数申明与定义,函数原型)

3. 如果 xxxx 是一个库函数的函数名,比如 sqrt 、 fabs ,那么看看你在cpp文件已开始是否包含了这些库函数所在的头文件(.h文件)。 例如,使用 sqrt 函数需要头文件math.h。如果 xxxx 就是 cin 或 cout ,那么一般是没有包含 iostream.h 。(关 联:#include,cin,cout)

4.如果 xxxx 是一个类名,那么表示这个类没有定义,可能性依然是:根本没有定义这个类,或者拼写错误,或者大小写错误,或者缺少头文件,或者类的使用在申明之前。(关联:类,类定义)

本站部分文章来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

    品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

  • 让AI触手可及  Qualcomm携手创通联达推出全新终端侧AI开发套件

    让AI触手可及 Qualcomm携手创通联达推出全新终端侧AI开发套件

  • 长虹新款智能语音空调,告诉你空调也能玩Siri

    长虹新款智能语音空调,告诉你空调也能玩Siri

  • 第一批国家重点研发计划公布,旷视科技开启“五年行动”

    第一批国家重点研发计划公布,旷视科技开启“五年行动”

网友点评网友点评
阅读推荐阅读推荐

据外媒报道,STEER打造了首款完全自动驾驶停车技术,旨在使常规车辆转变为无人驾驶车辆。STEER的首款技术应用是4级自动驾驶及网络安全停车...

近日,美国软性机器抓手制造商 Soft Robotics 宣布,获得 2000 万美元的融资,本轮投资者包括 Scale Venture Partners,Calibrate Ventures...

据外媒报道,加州车管局发布了《2017自动驾驶脱离报告(California Autonomous Vehicle Disengagement Reports)》,其中谈及了脱离的具体...

用人机语音交互,来解决智能家居适老的问题;通过家庭门禁与安防套件、空气净化套件、可燃气体与有害气体监控套件等相互联动,在不同生活情...