c – 小端和大端分配
我有以下代码
int i = 321; char ch = i; printf("%d",ch); 二进制i是00000000 00000000 00000001 01000001,输出为65. 我的机器是小端的.结果是基于底层机器的字节顺序吗?请澄清. 解决方法
引用C11,6.3.1.3:
标准仅涉及价值观.所以如果char是无符号的:321-256 = 65.如果char已签名,则行为是实现定义的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |