alignof宏
概要:
该宏在<stdalign.h>头文件中定义,扩展为C语言关键词_Alignof。
#define alignof _Alignof
关键词_Alignof的语法:
_Alignof(type-name);
描述:
_Alignof运算符是一元运算符,生成其操作数类型的对齐要求。该运算符的运算结果是一个size_t类型的整数常量;但该运算符不会计算操作数。当该运算符的操作数是数组类型时,运算结果是元素类型的对齐要求。
该运算符不能用于函数类型和不完整类型。
范例:
|
|
输出:
alignof(struct data): 8
注:当_Alignof运算符的操作数是结构类型时,ISO/IEC 9899:2018标准未作明确定义;但一些实现(例如:code::blocks、ideone、Pelles C。)的运算结果是结构成员的最严格对齐要求。
相关内容:
alignas | 扩展为关键词_Alignas的宏。 |
__alignof_is_defined | 判断是否定义alignof的宏。 |