VC++常见错误提示_第1页
VC++常见错误提示_第2页
VC++常见错误提示_第3页
VC++常见错误提示_第4页
VC++常见错误提示_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

VC++常见错误提示计算系软件工程教研室李典蔚2009括号中的数字是出错的代码行的行号。

例如错误中的第1行表示CalWnd.cpp的1092行出现了错误。如果想快速找到这行,可以在错误信息行上双击鼠标,这时VC++会自动打开.cpp文件并定位到这行。

在错误信息行上按F1键,VC++会打开MSDN帮助并显示关于该错误信息的一个简单的解释,你可以根据该解释来知道到底是什么意思。Error后面的数字表示错误代号。

错误代号分为两类:

(1)C开头的是编译错误,即你的代码存在语法错误,你需要修改代码;语法错误分为一般错误(error)和警告错误(warning)两种。

(2)LNK开头的是链接错误,通常你的代码并没有语法错误,可能是配置错误引起的,一般是程序中调用了某个函数,而链接程序却找不到该函数的定义,但有时LNK也可能是由于拼写错误引起的。另外,程序分为几个文件分别编译、链接时,可能出现全局变量没有声明或重复声明的错误。errorC2011:'C……':'class'typeredefinition

类“C……”重定义。

errorC2018:unknowncharacter'0xa3'

不认识的字符‘0xa3’。(一般是汉字或中文标点符号,因为系统对中文环境下输入的符号,例如分号括号等,系统是不接受的)fatalerrorC1004:unexpectedendoffilefound

解决方法:由于程序中少了")"或者"}"之类的符号,编译器认为你的程序还没有写完.找出哪里漏掉了这些符号,加上就可以了inta,b,max

提示:‘inta’undeclaredidentifier“inta”中“int”与“a”之间缺少空格for(i==0;i<10;i++)

提示:0error,1warning:operaterhasnoeffect;didyouintend=?将for(i==0;i<10;i++)中的“=”输入为“==”for(i=0,i<n,i++) errorC2143:syntaxerror:missing';'before')‘循环语句格式不符时报错error:unclaredidentifier

使用未声明的变量(变量名拼写错误,没有标识头文件等)。errorC2143:syntaxerror:missing':'before'{'

句法错误:“{”前缺少“;”。warningC4035:'f……':noreturnvalue

“f……”的return语句没有返回值。errorC2082:redefinitionofformalparameter'bReset'

函数参数“bReset”在函数体中重定义。if((i+1)%5=0)

提示:'=':leftoperandmustbel-value关系运算符误写为赋值语句,将if((i+1)%5==0)中的“==”误输入为“=”errorC2660:'SetTimer':functiondoesnottake2parameters“SetTimer”函数不传递2个参数。SetList(L,10);errorC2664:'SetList':cannotconvertparameter1from'SeqList'to'SeqList*‘参数类型不匹配errorC2196:casevalue'69'alreadyused值69已经用过。(一般出现在switch语句的case分支中)errorC2057:expectedconstantexpression希望是常量表达式。(一般出现在switch语句的case分支中)提示:printf/scanf:unclaredidentifier不使用头文件包含命令#include<stdio.h>就使用printf和scanf提示:rand/NULL:unclaredidentifier不使用头文件包含命令#include<stdlib.h>就使用rand和NULL提示:function'voidmain(void)'alreadyhasabody

若同一程序中出现两次voidmain(void)。提示:missingfunctionheader(old-styleformallist?)

若程序中缺少voidmain(void)。LIBCD.lib(wincrt0.obj):errorLNK2001:unresolvedexternalsymbol_WinMain@16 Debug/1.exe:fatalerrorLNK1120:1unresolvedexternals Errorexecutinglink.exe新建工程时,应选Win32ConsoleApplication,误选Win32ApplicationwarningC4700:localvariable'bReset'usedwithouthavingbeeninitialized局部变量“bReset”没有初始化就使用。errorC2509:'OnTimer':memberfunctionnotdeclaredin'CHelloView'成员函数“OnTimer”没有在“CHelloView”中声明。errorC2511:'reset':overloadedmemberfunction'void(int)'notfoundin'B'重载的函数“voidreset(int)”在类“B”中找不到。errorC2555:‘B::f1’:overridingvirtualfunctiondiffersfrom‘A::f1’onlybyreturntypeorcallingconvention类B对类A中同名函数f1的重载仅根据返回值或调用约定上的区别。typedefintDataType #include"seqlist.h" errorC2143:syntaxerror:missing';'before'<class-head>' fatalerrorC1004:unexpectedendoffilefound Errorexecutingcl.exe.DataType后缺分号#include“seqlist.h”fatalerrorC1083:Cannotopenincludefile:'seqlist.h':NosuchfileordirectoryErrorexecutingcl.exe.找不到头文件intPartition(SeqList*L,intlow,inthigh);{……}errorC2447:missingfunctionheader(old-styleformallist?)多分号,出现空语句while(L->data[j]>=0&j>i)warningC4554:‘&’:checkoperatorprecedenceforpossibleerror;useparenthesestoclarifyprecedence逻辑运算符&&拼写错误errorC4716:'CMyApp::InitInstance':mustreturnavalue“CMyApp::InitInstance”函数必须返回一个值。

LINK:fatalerrorLNK1168:cannotopenDebug/P1.exeforwriting连接错误:不能打开P1.exe文件,以改写内容。(一般是P1.Exe还在运行,未关闭)errorLNK2001:unresolvedexternalsymbol"public:virtual__thiscallC……::~C……(void)"连接时发现没有实现的外部符号(变量、函数等)。1、classString { private:... public: {voidInsert(String&CS,intpos); //InsertString …};voidString::Inse(String&CS,intpos) {…}errorC2039:'Inse':isnotamemberof'String‘公有成员声明与其定义不符::~String(void){cout<<"destructor"<<endl;delete[]str;}errorC2588:'::~String':illegalglobaldestructor类名及范围限定符String::漏写时报错:errorC2660:'exit':functiondoesnottake0parameters处理方法:在exit后加个(0)就行;fatalerrorC1083:Cannotopenprecompiledheaderfile:'Debug/MyClock.pch':Nosuchfileordirectory解决方法:可跳过COMPILE,直接进行BUILD,或是关闭VC++6.0,重新打开。errorC2664:'_wcsnicmp':cannotconvertparameter2from'LPWORD'to'constwchar_t*'

需要强制类型转换。errorC2061:syntaxerror:identifiernotfound'HELPINFO‘自己增加HELPINFO的类型,增加头文件HelpInfo.h。Linking...

errorLNK2001:unresolvedexternalsymbol__endthreadex

errorLNK2001:unresolvedexternalsymbol__beginthreadex

errorLNK2001:unresolvedexternalsymbol_main

VC++默认的工程设置是单线程的,而你使用了多线程,所以要修改设置。选择菜单“Project|settings”,选择C/C++标签,在CODEGENERATION分

温馨提示

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

最新文档

评论

0/150

提交评论