了解GCC和C++的请过来看下

来源:百度知道 编辑:UC知道 时间:2024/05/18 10:02:36
本人欲参加程序设计大赛(CAM),可以使用的语言是C++和JAVA,但相对JAVA,本人还是比较精通C++一点,但听说裁判机是GCC编译器,而且C++有一些代码规则在GCC上会报错,有没有人知道大概有哪里不太一样?用C++写的时候要注意什么?
啊......
指导老师说在FOR循环中,C++可以如下定义for(int i=0;i<100;i++),但是GCC里不允许在for后面有定义变量,需要在外面定义,我想知道类似此现象的地方

这就是标准和语句作用域的问题了
需要你了解的是,在GCC这个编译器发布的时候
关于语句作用域这个有没有在标准里定义
如果这个编译器发布之前标准没有定义关于语句作用域的内容
那么,你写在for里面,自然会引起重复定义

GCC/G++对任何符合标准的C/C++代码没有任何问题。
C标准一般指 C89/C90
C++则是 C++98

从现在起不要用 VC编译了,那个才是对标准支持最差的

GCC是C编译器,for(int i=0;i<100;i++)是c++语法,请用g++编译器

不涉及文件系统基本上都一样,不要用M$的扩展就行了,如果不确定可以装个cygwin里面有windows版的g++

要么是你们的指导老师不懂,要么是你没听懂——那个区别根本是c语言和c++的区别。
先确认下ACM是用c语言还是c++(我不记得了,我参加的时候用的是pascal),然后再用相应编译器。

无论是gcc还是个g++编译器都推荐使用mingw(如果你写程序是windows平台的话),比较方便:

是ACM竞赛吧........
另外C++的话得用G++编译器才行