1. -std= <c++11/gnu++11/c99>
- -std指编译器编译时采用的C/C++标准,用哪种标准进行编译。
-std= c++11,支持C++11标准; -std=gnu++11,支持C++11标准和GNU扩展特性;-std=c99开启c语言c99支持; -std=c11开启c语言c11库的支持;
2. -stdlib= <libstdc++/libc++>
- -stdlib指编译器编译时依赖的标准库。
gcc编译器没有-stdlib 这样命令行选项,LLVM clang编译器支持。 这是因为clang为您提供链接LLVM标准C ++库( libc ++ )或GNU标准C ++库( libstdc ++ ),而gcc只支持 libstdc ++ 。 简单说就是两个都是 C++ 标准库,libc++ 是针对 Clang 编译器特别重写的 C++ 标准库,而 libstdc++ 则是 GCC 的对应 C++ 标准库。
编译程序范例指定CXXFLAGS = -std=c++11 -stdlib=libstdc++

本文详细解析了C/C++编程中-std参数的使用,包括c++11、gnu++11和c99等标准,以及-stdlib参数如何选择libstdc++和libc++标准库,为C/C++开发者提供了实用指南。

被折叠的 条评论
为什么被折叠?



