ImageVerifierCode 换一换
格式:PDF , 页数:15 ,大小:442.93KB ,
资源ID:3209848      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3209848.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C常见错误及解决方案.pdf)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C常见错误及解决方案.pdf

1、 1 1 C+常见错误及解决方案 C+常见错误及解决方案 1.在源码中遗失“;”错误信息 syntax error:missing;错误示例 int test,number,test=12;解决方案 找到出错的相应位置,补上;2.缺少命名空间定义 错误信息 error c2065:cout:undeclared identifier 错误示例#include int main()cout “hello,world”endl;return 0;解决方案 在主程序头,添加命名空间使用定义。using namespace std;3.变量未定义直接使用 错误信息 2 2 C+常见错误及解决方案 er

2、ror c2065:xxxx:undeclared identifier 错误示例 int main()int age;cout”age:t”age endl cout “name:t”name:class std:;basic_ostreamchar,atruct std:char_traitsdoes not define this aperator or a conversion to a type acceptable to the acceptable to the predifined operator 错误示例 cout a;解决方案 把错误的输入输出符改成相应的,如 cout

3、a,改成 cin a。6.变量类型不匹配 3 3 C+常见错误及解决方案 错误信息 waring c4305:initializing:truncation from const double to float 错误示例 float pi=3.412345245656245 解决方案 在给变量赋值的时候,看清变量类型。7.变量在赋值之前使用 错误信息 warning c4700:local variable a used without having been initialized 错误示例 int i,j,k;k=i+j;cin i j;解决方案 这种错误主要是对面向过程的程序没理解透彻,

4、变量使用前,先初始化,对其进行赋值。8.在一个工程中出现多个 main 函数 错误信息 error c2556:int _cdecl main(void):overloaded function differs only by return type from void _cdecl main(void)e:tmptsing.cpp(4):see declaration of maine:tmpbigd.cpp(15):error c2371:main:redifinition;different basic types 错误示例/tsing.cpp int main()/bigd.cpp 4

5、 4 C+常见错误及解决方案 int main()解决方案 删除另外一个 main 函数,一个工程只能有一个 main 函数。9.在函数定义后面使用分号 错误信息 error C2447:missing functino header(old-style formal list?)错误示例 void test();解决方案 删除多余的分号。10.函数定义/使用/声明参数个数不匹配 错误信息 error c2660:chang:function does not take 2 parameters 错误示例 void chang(int a);int main()chang(1,2);void

6、chang(int a,int b)5 5 C+常见错误及解决方案 解决方案 函数声明和定义尽量放在两个文件里,以便管理参数个数和类型要用对。11.未包含指定头文件 错误信息 fatal error c1010:unexpected end of file while looking for precompiled header directive.错误示例/CMyClass 定义在 MyClass.h 中#include using namespace std;int main()CMyClass myClass;解决方案 找到因为哪个函数导致未包含头文件,然后找到该函数的头文件,包含指定头

7、文件即可。12.不能打开指定头文件 错误信息 fatal error c1083:Cannot open include file:R.h No such file or directory 错误示例#include“E;Test.h”/Test.h 不在 E 目录下,或者名字不对 解决方案 指定头文件名错误,或者指定路径错误,找到该头文件的正确名字或者路径。6 6 C+常见错误及解决方案 13.类重定义 错误信息 error c2011:c:class type redifinition 错误示例/CMyClass.h 首次定义 CMyClass class CmyClass /COther

8、Class.h 重复定义 CMyClass class CMyClass 解决方案 出错信息说明,该类已经定义过了,所以删除对该类的定义,或者给该类换个 类名。14.switch 语句的 case 分支中使用变量 错误信息 error c2057:expected constant expression 错误示例 int a,b;switch(a)case(b):break;解决方案 把相应的 case 分支,改成常量即可。15.函数参数在函数体中重定义 7 7 C+常见错误及解决方案 错误信息 error c2082:redifinition of formal parameter bRet

9、 错误示例 int Add(int val1,int val2)int val1=val1;解决方案 在函数体内部有变量和参数名字一样,修改下函数体的局部变量的名字即可。16.句法错误:”前缺少“:”错误信息 error c2143:syntax error:missing:befor 错误示例 int main()return 0/忘记;解决方案 一般是因为编程疏忽,在相应语句后面添加;。17.语法错误:50该值已被使用 错误信息 error C2196:case value 69 already used。错误示例 swotcj(val)case(10):case(50):8 8 C+常见

10、错误及解决方案 case(50):解决方案 一般都是疏忽所致,删除多余的 case 分支。18.成员函数未声明 错误信息 error C2509:testFunc:member function not declared in CHello。错误示例 class CHello public:CHello();CHello();int test()CHello test;test.testFunc();解决方案 在类内部提供该函数的声明,以及实现。19.函数重载错误 错误信息 error C2555:B:f1:overriding virtual function differs from A:

11、f1 only by return type or calling convention 错误代码 class A public:9 9 C+常见错误及解决方案 virtual int f1()class B:public A public:bool f1()解决方案 函数重载只能通过参数的不同来识别,不能根据返回值来确定,所以重载函数的时候注意这一点。20.函数参数传递错误 错误信息 error C2660:test:function does not take 2 parameters 错误代码 int spt(int num)return num*num;int main()int re

12、sult=sqt(2,4);解决方案 传递给函数的参数和函数定义不符,调用函数的时候根据具体函数参数来传递,这样就不会出错,上面的问题只需传递一个参数就行。21.连接错误:不能打开某文件 错误信息 LINK:fatal error LNK1168:cannot open Debug/P1.exe for writing 1010 C+常见错误及解决方案 错误代码 无 解决方案 这中问题一般是因为要编译的程序正在执行,或者被其他程序调用,关闭正在执行的程序和调用该程序的程序即可。22.数组访问越界 错误信息 无 错误代码 int arr10;for(int k=0;k 10;k+)arrk=k;

13、cout arr12endl;解决方案 越界访问数组,C+编译器并不提示错误,但这是程序致命的弱点。有可能修改关键数据,所有访问数组的时候不要直接用常量标志下界。23.头文件格式不正确 错误信息 EERROR:wrong header for namespace std 错误代码#include using namespace std;解决方案 删除 iostream 后面的.h即可 24.无效的操作符 错误信息 1111 C+常见错误及解决方案 warning C4553:=:operator has no effect;did you intend=?错误代码 int main(int a

14、rgc,char*argv)if(argc=1)cout “one paramter:”endl;if(argc=2)cout “two paramter:”endl;return 0;解决方案 疏忽所致比较运算符误写成赋值运算符,把=改成=。良好的编程习惯就是把比较常量作为左值。25.函数无返回值 错误信息 error C4716:test:must return a value 错误代码 int add(int a,int b)cout”Add two numbers!”endl;int main()int nRet=add(1,2);cout”The value is:”nRetendl

15、;return 0;解决方案 函数原型声明为有返回值,但是在函数实现的时候忘记写返回值了,就回出现这个错误,只要按函数声明的返回类型,返回相应的值即可。26.类定义出错 1212 C+常见错误及解决方案 错误信息 new types may not be defined in a return value,extraneous int ignored,main must return int 错误代码#include using namespace std;class A public:void func()cout hello has non-pointer type Test 错误代码#i

16、nclude using namespace std;class Test public:void Func()cout FuncFunc();/此处应该使用.操作符。-是指针操作符 1313 C+常见错误及解决方案 system(PAUSE);return 0;解决方案 对于指针,操作数据成员要用-操作符;对于像结构体,数组,联合等,操作数据成员要用.操作符。28.类成员访问错误 错误信息 In function int main(),int A:age is private within this context 错误代码#include using namespace std;class A public:A()age=0;void SetAge(int val)age=val;int GetAge()return age;private:int age;/age 是该类的私有成员,外部无法访问。;int main()A a;coutage:a.ageendl;/此处的 a.age 改成 a.GetAge()即可 a.SetAge(23);coutAge:a.GetAge()en

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

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