几行代码判断出当前环境的大小端字节序

几行代码判断出当前环境的大小端字节序,第1张

几行代码判断出当前环境的大小端字节
int test() {
	union {
		int a;
		char b;
	}t;
	t.a = 1;
	return t.b;
}
int main() {
	printf("%sn", test ? "小端" : "大端");
	return 0;
}

1. t 是共用体,将整形t.a的值赋为 1 此时 四个字节中的低位就为1,便只有一下两种情况:

case 1:小端字节序

地位在低地址,高位在高地址,此时我们t,b 即为真

case 2:大端字节序

低位在高地址,高位在低地址,此时我们t,b 即为真

我们直接返回字符t.b,由于是字符类型 所以只能拿到地址的第一个字节。

若为真即是小端,假则为大端。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5711433.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存