C11标准新特性
来源:互联网 发布:注册表清理软件 编辑:程序博客网 时间:2024/05/01 02:36
C11标准是C语言标准的第三版(2011年由ISO/IEC发布),前一个标准版本是C99标准。相比C99,C11有哪些变化呢——
1、 对齐处理
alignof(T)返回T的对齐方式,aligned_alloc()以指定字节和对齐方式分配内存,头文件<stdalign.h>定义了这些内容。
2、 _Noreturn
_Noreturn是个函数修饰符,位置在函数返回类型的前面,声明函数无返回值,有点类似于gcc的__attribute__((noreturn)),后者在声明语句尾部。
3、 _Generic
_Generic支持轻量级范型编程,可以把一组具有不同类型而却有相同功能的函数抽象为一个接口。
4、 _Static_assert()
_Static_assert(),静态断言,在编译时刻进行,断言表达式必须是在编译时期可以计算的表达式,而普通的assert()在运行时刻断言。
5、安全版本的几个函数
gets_s()取代了gets(),原因是后者这个I/O函数的实际缓冲区大小不确定,以至于发生常见的缓冲区溢出攻击,类似的函数还有其它的。
6、 fopen()新模式
fopen()增加了新的创建、打开模式“x”,在文件锁中比较常用。
7、 匿名结构体、联合体。
8、 多线程
头文件<threads.h>定义了创建和管理线程的函数,新的存储类修饰符_Thread_local限定了变量不能在多线程之间共享。
9、 _Atomic类型修饰符和头文件<stdatomic.h>。
10、改进的Unicode支持和头文件<uchar.h>。
11、quick_exit()
又一种终止程序的方式,当exit()失败时用以终止程序。
12、复数宏,浮点数宏。
13、time.h新增timespec结构体,时间单位为纳秒,原来的timeval结构体时间单位为毫秒。
- C11标准新特性
- C11的标准特性
- c11新特性
- C11新特性
- C11 新特性
- C11新特性
- 【转载】c11新特性之move介绍
- c++学习-c11中函数新特性
- 对于C11新特性 lambda函数的一点见解
- C11新特性推荐《C++ Primer 第五版》
- C99标准新特性
- C99标准新特性
- C99 标准新特性
- C语言标准C11
- C11编辑器升级和C11标准使用
- c11新書
- C99标准的新特性
- C99标准的新特性
- EXE与SYS通信(其他模式)
- POJ-The Perfect Stall-最大图匹配
- 散列函数
- android工程引用另外一个工程的类和资源
- 房价预测(HackerRank)
- C11标准新特性
- 个人网站
- ListView侧滑删除(SwipeMenuListView)
- div css 背景颜色透明度设置
- 常用工具---前30的英文缩写
- UIPickerView控件学习总结
- 网络传输协议之二进制反码校验和剖析
- java 自动登陆cookie注意事项
- 为什么ui控件属性用weak ,如果用strong会形成死循环