__STDC_ENDIAN_LITTLE__, __STDC_ENDIAN_BIG__, __STDC_ENDIAN_NATIVE__
来自cppreference.com
在标头 <stdbit.h> 定义 | ||
#define __STDC_ENDIAN_LITTLE__ /* 由实现定义 */ | (1) | (C23 起) |
#define __STDC_ENDIAN_BIG__ /* 由实现定义 */ | (2) | (C23 起) |
#define __STDC_ENDIAN_NATIVE__ /* 由实现定义 */ | (3) | (C23 起) |
- 若所有标量类型均为小端,则 __STDC_ENDIAN_NATIVE__ 等于 __STDC_ENDIAN_LITTLE__。
- 若所有标量类型均为大端,则 __STDC_ENDIAN_NATIVE__ 等于 __STDC_ENDIAN_BIG__。
- 若平台不使用大端或小端,则__STDC_ENDIAN_NATIVE__ 既不等于 __STDC_ENDIAN_BIG__ 也不等于 __STDC_ENDIAN_LITTLE__。
- __STDC_ENDIAN_BIG__ 和 __STDC_ENDIAN_LITTLE__ 的整数常量表达式的值不同。
示例
运行此代码
可能的输出:
mixed-endian
参阅
endian 的 C++ 文档 |