GCC与G++

GCC和G++都是GNU的一个编译器.

下面从编译和连接两个方面加以比较.

编译:

1.后缀为.c的,GCC把它当作是C程序,而G++当作是c++程序;后缀为.cpp的,两者都会认为是c++程序

2.在编译阶段,G++是调用GCC(按C++语法编译)的.因为C++对语法的要求更严格,所以,某一C文件用GCC编译能过,用G++则不一定通过.

extern "C"与GCC还是G++并无关系,都是以C的命名方式编译出结果.

__cplusplus宏标志编译器将代码按C还是C++来编译,所以,对G++而言,该宏总是定义的,对GCC而言,后缀为.cpp的则该宏是已定义的,否则,未定义.

连接:

3.gcc命令连接C程序没问题,但它不能自动和C++程序使用的库联接.所以针对C++程序通常使用gcc -lstdc++或者g++来完成联接.

这里面就不具体举例子了.其实主要理解的还是Makefile的编写和gdb调试的使用,这两个才是最重要的.这个网上资料很多,本博客以后也不打算介绍这方面内容了.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值