《2022年C++程序编译中常见错误 2.pdf》由会员分享,可在线阅读,更多相关《2022年C++程序编译中常见错误 2.pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、C+课程上机实验常见错误汇集1在源码中遗失“;”调试器错误信息:syntax error:missing;2缺少命名空间使用定义:即缺少“using namespace std;”调试器错误信息:例:error C2065:cout:undeclared identifier 例如 cout/cin/endl/等在命名空间中定义的符号和标示符无法使用。3变量未定义就直接使用调试器错误信息:例:error C2065:i:undeclared identifier C+语言中,变量的使用必需遵循先声明定义,后使用的原则。4在程序中使用中文标示符,如将英文”;”错误输入成了”;”调试器错误信息:e
2、rror C2018:unknown character 0 xa3 在 C+中,除程序注释可以采用中文外,其余字符要求使用英文。不少同学在建立工程或程序名称时也使用中文名称,建议改掉这种习惯。5在使用输入输出流的时候错误使用了标示符“”“a;调试器错误信息:例:error C2676:binary :class std:basic_ostreamchar,struct std:char_traits does not define this operator or a conversion to a type acceptable to the predefined operator 对于流
3、操作的方向搞错是一个普遍错误,问题本来并不复杂,可能是由于没有认真看书的原因。6定义的变量类型与使用不对应,如声明为float,但实际给与了一个double 的值,例:float pi=3.412345245656245;调试器错误信息:warning C4305:initializing:truncation from const double to float 7变量在赋值之前就使用,例:int a,b,c;c=a+b;cinab;名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 5 页 -调试器错误信息:warning C4700:local variable a used
4、without having been initialized 出现这种错误主要是对面向过程的程序执行没有理解。8在一个工程中包含多于一个的main 函数error C2556:int _cdecl main(void):overloaded function differs only by return type from void _cdecl main(void)E:tempalskdfldid.cpp(4):see declaration of main E:tempalskdfldid.cpp(15):error C2371:main:redefinition;different b
5、asic types 在上机课中始终有同学犯这种错误,原因可能是从来没有上过机。9在函数定义的()后面使用分号例:void chang();,调试器错误信息:error C2447:missing function header(old-style formal list?)10函数声明/定义/调用参数个数不匹配.例:void chang(int a,int b,float c)void main()名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 5 页 -chang(3,4);调试器错误信息:error C2660:chang:function does not take 2
6、parameters 最常见的20 种 VC+编译错误信息1、atal error C1010:unexpected end of file while looking for precompiled header directive。寻找预编译头文件路径时遇到了不该遇到的文件尾。(一般是没有#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 redef
7、inition 类“C,”重定义。4、error C2018:unknown character 0 xa3 不认识的字符0 xa3。(一般是汉字或中文标点符号)5、error C2057:expected constant expression 希望是常量表达式。(一般出现在switch 语句的 case分支中)6、error C2065:IDD_MYDIALOG:undeclared identifier“IDD_MYDIALOG”:未声明过的标识符。7、error C2082:redefinition of formal parameter bReset 函数参数“bReset”在函数体
8、中重定义。8、error C2143:syntax error:missing:before 句法错误:“”前缺少“;”。9、error C2146:syntax error:missing;before identifier dc 名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 5 页 -句法错误:在“dc”前丢了“;”。10、error C2196:case value 69 already used 值 69 已经用过。(一般出现在switch 语句的 case分支中)11、error C2509:OnTimer:member function not declared i
9、n CHelloView 成员函数“OnTimer”没有在“CHelloView”中声明。12、error C2511:reset:overloaded member function void(int)not found in B 重载的函数“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 中同名函数f1 的重载仅根据返回值或调用约定上的区别。14、erro
10、r C2660:SetTimer:function does not take 2 parameters“SetTimer”函数不传递2 个参数。15、warning C4035:f,:no return value“f,”的return 语句没有返回值。16、warning C4553:=:operator has no effect;did you intend=?没有效果的运算符“=”;是否改为“=”?17、warning C4700:local variable bReset used without having been initialized 局部变量“bReset”没有初始化就
11、使用。18、error C4716:CMyApp:InitInstance:must return a value“CMyApp:InitInstance”函数必须返回一个值。19、LINK:fatal error LNK1168:cannot open Debug/P1.exe for writing 连接错误:不能打开P1.exe文件,以改写内容。(一般是 P1.Exe 还在运行,未关闭)名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 5 页 -20、error LNK2001:unresolved external symbol public:virtual _ _thiscall C,:C,(void)连接时发现没有实现的外部符号(变量、函数等)。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 5 页 -