王牌8-扫雷英雄榜――C++常见错误及解决方案

上传人:我*** 文档编号:133309957 上传时间:2020-05-26 格式:PDF 页数:15 大小:186.16KB
返回 下载 相关 举报
王牌8-扫雷英雄榜――C++常见错误及解决方案_第1页
第1页 / 共15页
王牌8-扫雷英雄榜――C++常见错误及解决方案_第2页
第2页 / 共15页
王牌8-扫雷英雄榜――C++常见错误及解决方案_第3页
第3页 / 共15页
王牌8-扫雷英雄榜――C++常见错误及解决方案_第4页
第4页 / 共15页
王牌8-扫雷英雄榜――C++常见错误及解决方案_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《王牌8-扫雷英雄榜――C++常见错误及解决方案》由会员分享,可在线阅读,更多相关《王牌8-扫雷英雄榜――C++常见错误及解决方案(15页珍藏版)》请在金锄头文库上搜索。

1、 扫雷英雄榜 C 常见错误及解决方案 王牌8 1 1 扫雷英雄榜 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 变量未定义直接使用 错误信息 error

2、c2065 xxxx undeclared identifier C 从入门到精通 2 2 错误示例 int main int age cout age t age endl cout name t name class std basic ostream char atruct std char traits does not define this aperator or a conversion to a type acceptable to the acceptable to the predifined operator 错误示例 cout a 解决方案 把错误的输入输出符改成相应的

3、 如 cout a 改成 cin a 6 变量类型不匹配 错误信息 扫雷英雄榜 C 常见错误及解决方案 王牌8 3 3 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 tmp tsing cpp 4 see declaration of main e tmp bigd cpp 15 error c2371 main redifinition different basic types 错误示例 tsing cpp int

5、main bigd cpp int main C 从入门到精通 4 4 解决方案 删除另外一个 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

6、void chang int a int b 扫雷英雄榜 C 常见错误及解决方案 王牌8 5 5 解决方案 函数声明和定义尽量放在两个文件里 以便管理参数个数和类型要用对 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 目录下 或者名字不对 解决方案 指定头文件名错误 或者指定路径错误 找到该头文件的正确名字或者路径 13 类重定义 C 从入门到精通 6 6 错误信息 error c2011 c class type redifinition 错误示例 CMyClass h 首次定义 CMyClass class CmyCl

8、ass COtherClass h 重复定义 CMyClass class CMyClass 解决方案 出错信息说明 该类已经定义过了 所以删除对该类的定义 或者给该类换个 类名 14 switch 语句的 case 分支中使用变量 错误信息 error c2057 expected constant expression 错误示例 int a b switch a case b break 解决方案 把相应的 case 分支 改成常量即可 15 函数参数在函数体中重定义 错误信息 扫雷英雄榜 C 常见错误及解决方案 王牌8 7 7 error c2082 redifinition of fo

9、rmal parameter bRet 错误示例 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 cas

10、e 50 C 从入门到精通 8 8 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

11、A f1 only by return type or calling convention 错误代码 class A public virtual int f1 扫雷英雄榜 C 常见错误及解决方案 王牌8 9 9 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 m

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

13、k arr k k cout arr 12 endl 解决方案 越界访问数组 C 编译器并不提示错误 但这是程序致命的弱点 有可能修改关键 数据 所有访问数组的时候不要直接用常量标志下界 23 头文件格式不正确 错误信息 EERROR wrong header for namespace std 错误代码 include using namespace std 解决方案 删除 iostream 后面的 h 即可 24 无效的操作符 错误信息 warning C4553 operator has no effect did you intend 扫雷英雄榜 C 常见错误及解决方案 王牌8 11

14、11 错误代码 int main int argc 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 val

15、ue is nRet endl return 0 解决方案 函数原型声明为有返回值 但是在函数实现的时候忘记写返回值了 就回出现这个错 误 只要按函数声明的返回类型 返回相应的值即可 26 类定义出错 C 从入门到精通 12 12 错误信息 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 typ

16、e Test 错误代码 include using namespace std class Test public void Func cout Func Func 此处应该使用 操作符 是指针操作符 扫雷英雄榜 C 常见错误及解决方案 王牌8 13 13 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 cout age a age endl 此处的 a age 改成 a GetAge 即可 a SetAge 23 cout Age

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号