zoukankan      html  css  js  c++  java
  • gcc和g++的区别

    gcc和g++的区别,上网搜了一下再搜一下,全世界的说法千奇百怪,还是直接看文档吧。。

    Quote:“the use of gcc does not add the C++ library. g++ is a program that calls GCC and treats `.c', `.h' and `.i' files as C++ source files instead of C source files unless -x is used, and automatically specifies linking against the C++ library”(Btw:GCC下面C++头文件一般用.hh)

    在gcc和g++编译时加参数-v(verbose mode)可以看到默认情况下他们连接了这些库:
    g++: -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc
    gcc: -lgcc -lgcc_eh -lc -lgcc -lgcc_eh

    所以gcc和g++的区别首先是在默认filetype的处理上,用g++的话,注意扩展名或者在需要的地方加上extern "C";还有重要的一点就是连接时g++约等于gcc -lstdc++

    BTW,关于extern "C":如果C和C++库混用,或者要写代码在不同的C++编译器编译后混用,第一个问题就是name mangling了,可以参考探索C++详解extern "C"

  • 相关阅读:
    日志
    JAVA字符串类
    JAVA包
    JAVA面向对象
    JAVA数组
    JAVA循环结构
    JAVA程序调试
    JAVA条件判断
    JAVA算术运算符
    JAVA数据类型
  • 原文地址:https://www.cnblogs.com/dxz/p/gcc_gpp_diff.html
Copyright © 2011-2022 走看看