ACM错误提示、常见问题.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ACM 错误提示、常见问题 F.A.Q.(Chinese) 我的程序为什么不能编译通过呢? Online Judge 要求 C/C++程序符合 Ansi 标准: ANSI 标准和 Microsoft Visual C++ 存在一些不同的地方,比如: 0)main 函数必须声明为 int ,也就是 void main() 必须变成 int main() VC 同样可使用 int main,只是程序最后需要 return 0;。 Microsoft Visual C++ 可以将 main 函数声明为 void,而 ANSI 中必须为 int main 请避免使用如下方式声明变量 i for (int i=0; i10; i++) { ... } 您可以在 For 语句之前,进行声明。3)itoa 不是一个 ANSI 函数4)stricmp 不是一个 ANSI 函数 5)sqrt() 的可能用法:sqrt(double (x)); //强制转换为 double 6)OnlineJudge 中如何使用 64 位数? 定义 64 位数使用 long long 类型,输出格式串中使用 %lld 表示 64 位数。 虽然 Free Pascal 尽量设计得和 Turbo Pascal 接近,但是由于以下的两个原因,两者之间还是有一些区别的: 1.Free Pascal 是一个 32 位的编译器,而 Turbo Pascal 只是 16 位编译器; 2.Free Pascal 是一个跨平台的编译器,而 Turbo Pascal 只在 windows 上 使用。 如果你的代码是遵守ANSI Pascal 的,那么代码从 Turbo Pascal 移植到Free Pascal 是没有问题的。 下面是在 Turbo Pascal 上可以使用,但是在 Free Pascal 就不能使用的一些语言特性: 函数和过程在使用时,参数的类型必须和定义时完全一致。原因是在 Free Pascal 中添加了函数重载功能。 PROTECTED,PUBLIC,PUBLISHED,TRY,FINALLY,EXCEPT,RAISE 成为了关键字,因此不能作为函数和过程的名字。 FAR,NEAR 不再是关键字了。原因是 Free Pascal 是 32 位系统,不再需要这些关键字。 布尔表达式不一定要全部进行计算。只要最终结果已经能够确定,就不再计算其它还没有计算的部分了。 比如布尔表达式 exp1 AND exp2 AND exp3,如果已知exp1 的结果是 false, 那么怎么表达式的结果肯定是 false,exp2 和 exp3 就不用进行计算了。 在 Free Pascal 中,中的元素都是 4 个字节长的。 表达式执行的顺序是不确定的。比如对于表达式 a:=g(2)+f(3); 不保证 g(2)一定在 f(3)之前执行。 如果用 Rewrite 打开文件,那么文件就只能被写入了。如果需要读取这个文件,要对文件执行 Reset。 Free Pascal 在程序结束之前一定要关闭输出文件,否则输出文件可能不能被正确的写入。 Free Pascal 理论上可以使用 4GB 的内存,因此实际上几乎可以使用系统中的所有剩余内存(除非赛题中有内存限制)。 这是 Free Pascal 由于 32 位的编译器。但是对于 Turbo Pascal 来说,由于是 16 位的编译器, 因此不能定义大小超过 64KB 的数据类型和变量,并且在 DOS 实模式下可以使用的内存总数只有 640KB。 Online Judge 评判结果分别表示什么意思? 当你提交的程序被 Online Judge 评判完毕后,通常结果将立刻返回,或者你也可以在“Solutions”页看到评判结果。 详细测试多数据测试模式下,将显示出各个测试数据的测试结果,并且无论结果如何,都会用所有测试数据进行测试。 而一般多测试模式下,如果全对,则为 Accepted;若其中某次数据出错, 则评测中止,并返回此数据出错的信息。 常见的 Online Judge 将评判结果分为如下几类: Accepted 程序的输出完全满足题意,通过了全部的测试数据的测试。 Wrong Answer 你的程序顺利地运行完毕并正常退出,但是输出的结果却是错误的。注意:有的题包含多组测试数据,你的程序只要有一组数据是错误的, 结果就是 WA。 Presentation Error 你的程序输出的答案是正确的,但输出格式不对,比如多写了一些空格、换行。 请注意,大部分程序的输出,都要求最终输出一个换行。 不过,计算机程序是很难准确判断 PE 错误的,所以,很多 PE 错误都会被评判成 WA。 Compilation Error 你的程序没

您可能关注的文档

文档评论(0)

hao187 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档