g++和gcc的用法
1.编译一个文件
g++ -o output_file source_file.cpp
gcc -o output_file source_file.c
你执行完上面任意一个文件后,你将会发现它生成了一个exe文件。
2.编译但不链接
g++ -c source_file.cpp
gcc -c source_file.c
它将生成一个.o文件。
e.g.
我们可以看到,执行完命令之后它生成了一个test.o文件
.o代表Object,即目标文件
3.指定标准
指定C标准
gcc -std=c11 source_file.c
gcc -std=gnu11 source_file.c
gcc -std=c99 source_file.c
gcc -std=gnu99 source_file.c
指定C++标准
g++ -std=c++17 source_file.cpp
g++ -std=gnu++17 source_file.cpp
g++ -std=c++20 source_file.cpp
g++ -std=gnu++20 source_file.cpp
这个参数 -std=c++17 意味着编译器会严格执行c++17标准,这可以增强代码的可移植性;如果你使用gnu你将会得到更多的功能,但是这些功能是标准之外的,你将会失去可移植性作为代价。