网站设计项目总结,好玩的html代码,wordpress自定义首页,wordpress媒体库路径参考:https://blog.csdn.net/Dontla/article/details/129016157 C各个版本 C11 C11是一个重要的C标准版本#xff0c;于2011年发布。C11带来了许多重要的改进#xff0c;包括#xff1a;
智能指针#xff1a;引入了shared_ptr和unique_ptr等智能指针#xff0c;用于更好地…参考:https://blog.csdn.net/Dontla/article/details/129016157 C各个版本 C11 C11是一个重要的C标准版本于2011年发布。C11带来了许多重要的改进包括
智能指针引入了shared_ptr和unique_ptr等智能指针用于更好地管理动态内存分配。 新的循环语句引入了for循环中的范围语法以更简洁的方式遍历容器。 初始化列表允许使用初始化列表来初始化数组和结构体等数据结构。 Lambda表达式允许在代码中直接创建匿名函数。 多线程引入了多线程库用于简化多线程编程。 C14 C14是C11的一个小范围修订版本于2014年发布主要包括
增加了对可变参数的支持。 增加了对类型推导的支持。 提高了constexpr函数的限制。 C17 C17是C14的一个较大范围修订版本于2017年发布其中一些重要的改进包括
增加了新的文件系统库。 支持了构造函数的默认参数。 支持了结构体包含简化了结构体的初始化。 增加了对并行编程的支持。 C20 C20是C17的一个较大范围修订版本于2020年发布其中一些重要的改进包括
引入了模板参数推导。 引入了协同程序以简化异步编程。 引入了模板类型推导以简化模板编程。 支持了关键字import以简化模块的导入。
查看自己的编译器支持C哪个版本 浪潮服务器ubuntu20.04 gcc9.4.0
例如检查是否支持C11
g -stdc11 -E - /dev/null这行代码是使用g编译器来编译一段简单的C代码以检查您的系统是否支持C11。 其中-stdc11选项告诉编译器使用C11标准编译代码。 -E选项告诉编译器只进行预处理而不进行编译和链接步骤。 最后- /dev/null表示将标准输入重定向到/dev/null以便编译器不必读取任何输入。 如果命令行没有输出或者只输出了警告信息则说明您的系统支持C11。如果输出了错误信息则说明您的系统不支持C11。 检查是否支持C14
g -stdc14 -E - /dev/null 检查是否支持C17
g -stdc17 -E - /dev/null 检查是否支持C20注意20要写成2a
g -stdc2a -E - /dev/null 上面都是支持情况的打印如果不支持会提示什么呢
136盒子 ubuntu16.04 gcc5.4.0 如图这个环境不支持C20
注意编译时不指定g版本默认使用老版本编译存疑 如果在编译时不指定C的版本那么g编译器会使用默认的C版本。 一般情况下默认的C版本可能是比较老的版本例如C98或C03。 因此如果需要使用新的C特性比如C11或C14最好明确指定版本。