为什么在c++上写好且运行的程序在ACM编译器上却编译错误?
5个回答
展开全部
如果真想做ACM,就不要用VC6.0,VC对标准C++支持很差。用Dev C++.
正赛Windows系统都没有,要学会用Emacs、NetBeans、Eclipse
若出现编译错误,各OJ上都会有提示,告诉你哪行错了。
常见VC正确,但标准C++错误的:
1.void main()
纯粹M$YY
GCC和ISO C99、ISO C++98都只认可int main()
谭浩强版的main()——省略int类型名,在C89下是合法的,但在C99下也不合法了
2.main()返回参数
因为是int main(),所以return 0必不可少
3.VS的控制台程序喜欢添点SB的#include "stdafx.h"
统统去掉
4.不要用一些M$自己定义的数据类型
5.OJ只能提交单个文件,代码里不要包含非标准头文件
<iostream>别写成<iostream.h>
正赛Windows系统都没有,要学会用Emacs、NetBeans、Eclipse
若出现编译错误,各OJ上都会有提示,告诉你哪行错了。
常见VC正确,但标准C++错误的:
1.void main()
纯粹M$YY
GCC和ISO C99、ISO C++98都只认可int main()
谭浩强版的main()——省略int类型名,在C89下是合法的,但在C99下也不合法了
2.main()返回参数
因为是int main(),所以return 0必不可少
3.VS的控制台程序喜欢添点SB的#include "stdafx.h"
统统去掉
4.不要用一些M$自己定义的数据类型
5.OJ只能提交单个文件,代码里不要包含非标准头文件
<iostream>别写成<iostream.h>
展开全部
ACM编译器, 不像VC++6.0的那样的,,
它自己会对你的程序赋 一些 检测数据,如果这些检测数据能输出准确的答案。就能通过。
类似于 数据结构上机时,上机上交那种形式。
必须有 数据 输入 这块。。 具体怎么输入,ACM上面有说,你看看吧
它自己会对你的程序赋 一些 检测数据,如果这些检测数据能输出准确的答案。就能通过。
类似于 数据结构上机时,上机上交那种形式。
必须有 数据 输入 这块。。 具体怎么输入,ACM上面有说,你看看吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
好像一般不会出现此问题
可能你语言选择错了
或者你复制粘帖时出了差错
可能你语言选择错了
或者你复制粘帖时出了差错
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把代码贴出来,返回值啊,头文件之类的都会影响到编译的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不同的编译器支持的东西也不一样。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询