GCC stands for GNU Compiler Collections which is used to compile mainly C and C++ language. It can also be used to compile Objective C and Objective C++. The most important option required while compiling a source code file is the name of the source program, rest every argument is optional like a warning, debugging, linking libraries, object file, etc. The different options of GCC command allow the user to stop the compilation process at different stages.
g++ command is a GNU c++ compiler invocation command, which is used for preprocessing, compilation, assembly and linking of source code to generate an executable file. The different “options” of g++ command allow us to stop this process at the intermediate stage.
DIFFERENCE BETWEEN g++ & gcc
g++ | gcc |
---|---|
g++ is used to compile C++ program. | gcc is used to compile C program. |
g++ can compile any .c or .cpp files but they will be treated as C++ files only. | gcc can compile any .c or .cpp files but they will be treated as C and C++ respectively. |
Command to compile C++ program through g++ is g++ fileName.cpp -o binary | command to compile C program through gcc is gcc fileName.c -o binary |
Using g++ to link the object files, files automatically links in the std C++ libraries. | gcc does not do this. |
g++ compiles with more predefined macros. | gcc compiles C++ files with more number of predefined macros. Some of them are #define __GXX_WEAK__ 1, #define __cplusplus 1, #define __DEPRECATED 1, etc |
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.