gcc编译c++的选项以及gcc与g++编译c++代码的区别

时间:2021-05-21 02:04:49

   

$ gcc --help

  -x <language>            Specify the language of the following input files
                           Permissible languages include: c c++ assembler none
                           'none' means revert to the default behavior of
                           guessing the language based on the file's extension

$g++ --help

  -x <language>            Specify the language of the following input files
                           Permissible languages include: c c++ assembler none
                           'none' means revert to the default behavior of
                           guessing the language based on the file's extension


Compiling C++ Programs

       C++ source files conventionally use one of the suffixes .C, .cc, .cpp, .CPP, .c++, .cp, or .cxx; C++ header files often
       use .hh, .hpp, .H, or (for shared template code) .tcc; and preprocessed C++ files use the suffix .ii.  GCC recognizes
       files with these names and compiles them as C++ programs even if you call the compiler the same way as for compiling C
       programs (usually with the name gcc).


       However, the use of gcc does not add the C++ library.  g++ is a program that calls GCC and automatically specifies
       linking against the C++ library.  It treats .c, .h and .i files as C++ source files instead of C source files unless -x
       is used.  This program is also useful when precompiling a C header file with a .h extension for use in C++ compilations.
       On many systems, g++ is also installed with the name c++.


       When you compile C++ programs, you may specify many of the same command-line options that you use for compiling programs
       in any language; or command-line options meaningful for C and related languages; or options that are meaningful only for

       C++ programs.


gcc 如果指定 -xc++  就会将输入文件认为是c++文件   g++也有对应选项

gcc不会自动链接c++库,g++在调用gcc时自动链接的是c++库