码迷,mamicode.com
首页 > 其他好文 > 详细

GCC与G++那些事儿

时间:2014-11-19 23:50:38      阅读:330      评论:0      收藏:0      [点我收藏+]

标签:io   使用   sp   文件   on   问题   cti   bs   ef   

StackOverflow上一个很有名的问题,gcc和g++到底有什么区别?

答案如下:

GCC: GNU Compiler Collection

指的是GNU编译器所支持的所有不同的类型的语言

gcc: GNU C  Compiler

g++:GNU C++ Compiler

主要的区别在于:

1.gcc会将.c文件和.cpp文件分别当做C和C++来编译。

2.g++会将.c文件和.cpp文件都当做c++文件来编译。

3.如果使用g++链接目标文件,它会自动链接std C++ lib。然而gcc不会,需要手动指明-lstdc++。

4.gcc在编译c文件时预定义宏更少。

5.gcc编译cpp文件以及g++编译c/cpp文件都会需要额外的宏定义。

 

在编译cpp文件时,额外的宏定义如下:

#define __GXX_WEAK__ 1
#define __cplusplus 1
#define __DEPRECATED 1
#define __GNUG__ 4
#define __EXCEPTIONS 1
#define __private_extern__ extern

 

GCC与G++那些事儿

标签:io   使用   sp   文件   on   问题   cti   bs   ef   

原文地址:http://www.cnblogs.com/ShaneZhang/p/4109494.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!