CCF刷题遇坑笔记 |
您所在的位置:网站首页 › c语言编译失败的原因有哪些 › CCF刷题遇坑笔记 |
文章目录
0 背景1 pair错误2 unordered_map错误3 复制数组4 调试崩溃5 题目给的测试案例正确,但是提交后却错误6 int转string7 尽量使用math.h头文件,而不是cmath
0 背景
最近刷ccf的时候,总是会遇到在Dev CPP上编译、运行都没有问题,结果一复制到ccf的网页编译器中,一提交就爆出编译错误(天啦噜,什么上古编译器??!! )。 如果使用 #include #include std::vector test;就会爆出编译错误,解决方法,使用结构体(因为pair本身就是有两个元素的结构体): typedef struct Data{ int first, second; Data(int _first, int _second):first(_first), second(_second){}//初始化列表 }data; std::vector test; 2 unordered_map错误使用unordered_map会爆出编译错误,解决方法: #include namespace std{ using std::tr1::unordered_map; }就可以正常使用: //例如 std::unordered_map A; int index, value; scanf("%d%d", &index, &value); A.push_back(data(index, value)); 3 复制数组使用下面代码复制数组时,会报错: #include const int MAXV = 510; int inDegree[MAXV] = {0};//入度 int tempInDegree[MAXV];//临时存储入度 std::copy(std::begin(inDegree), std::end(inDegree), std::begin(tempInDegree));解决方法,使用memcpy: #include memcpy(tempInDegree, inDegree, (m+n)* sizeof(int));//复制的字节数 4 调试崩溃如果调试程序时,软件崩溃,如下图所示: 自己多自己模拟数据,比如边界测试等。 6 int转string使用C++11的全局函数std::to_string()会爆出编译错误(难道连C++11都不支持嘛。。。 ),结果只好使用流转换。 //#include string itoString(int num){ stringstream stream; stream |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |