如何使用 -std=c++11 或其他对应的 C++ 标准编译选项。
时间: 2023-02-09 12:45:43 浏览: 213
在编译 C 程序时使用 -std=c11 或其他对应的 C 标准编译选项,可以指定编译器使用 C11 或其他对应的 C 标准。例如,在命令行中使用以下命令编译 C 程序:
```
gcc -std=c11 -o program program.c
```
这将使用 C11 标准编译 program.c,并将生成的二进制文件命名为 program。
注意:
-std=c11 是 GCC 编译器使用的,其他编译器有可能是 -std=c11, -std=c++11, -std=c99等
在使用编译器的时候需要查看编译器的文档来确定使用的选项。
相关问题
Android.bp cppflags: ["-std=c++11"]如何使用
在Android.bp文件中,可以通过将`-std=c++11`选项添加到cppflags属性中来指定使用C++11标准进行编译。例如:
```
cc_library {
name: "my_library",
srcs: ["my_file.cpp", "my_other_file.cpp"],
cppflags: ["-std=c++11"],
}
```
这将在编译my_library模块时,告诉C++编译器使用C++11标准进行编译。如果需要使用其他版本的C++标准,只需将选项中的c++11替换为相应的版本即可,例如:`-std=c++14`、`-std=c++17`等。
需要注意的是,不同版本的C++标准可能会有不同的语言特性和行为,因此在使用时需要考虑其兼容性和适用性。同时,如果在代码中使用了C++11标准的特性,那么在编译时一定要确保选项中指定了对应的标准,否则代码可能无法正确编译或运行。
64 28 C:\Users\Administrator\Documents\未命名1.cpp [Warning] extended initializer lists only available with -std=c++11 or -std=gnu++11
这个警告信息是因为你的代码使用了 C++11 的特性,但是编译器没有开启对应的编译选项。你需要在编译时添加 `-std=c++11` 或者 `-std=gnu++11` 这个选项,来开启 C++11 的支持。
具体来说,如果你使用的是 gcc 编译器,可以在编译时添加 `-std=c++11` 选项:
```
g++ -std=c++11 your_code.cpp -o your_program
```
如果你使用的是 Visual Studio,可以在项目属性中设置 C++ 语言版本为 C++11。
如果你使用的是其他编译器,可以查看对应的文档,了解如何开启 C++11 的支持。