目前,我有以下功能来检测系统字节序:
inline bool detectSystemEndianness()
{
int i = 1;
char *c = reinterpret_cast<char*>(&i);
return (c[0] != i);
}
false
如果是小端,如果是大端,则返回true
。第一个问题:这个功能可以吗?
第二个问题:我想初始化一个静态变量,而不是这个函数:
static bool _systemEndianness = /* SOMETHING */
怎么做 ?(它必须在执行时而不是在编译时完成......至少我认为是这样)