64,649
社区成员
发帖
与我相关
我的任务
分享
用两个字符表示的,比如int a = 200;实际得到的值应该是0x00C8,就是byte b[0] = 0x00,byte b[1] = C8 [quote=引用 2 楼 starytx 的回复:] 是16进制字符串吗?两个字节表示的最大的数是"FF",也就是255,而一个int的范围远超过255,数据会溢出
char str[5] = {0};
sprintf(str ,"%04X" ,n);
int n = 200;
BYTE b[2];
memcpy(b ,&n ,sizeof(b));
char buf[9]; sprintf(buf, "%08x", 13);//0000000d
是16进制字符串吗?两个字节表示的最大的数是"FF",也就是255,而一个int的范围远超过255,数据会溢出
int32_t lVal;
int16_t m_store[2];
memcpy(m_store,&lVal,sizeof(lVal));
用两个字符表示的,比如int a = 200;实际得到的值应该是0x00C8,就是byte b[0] = 0x00,byte b[1] = C8 是16进制字符串吗?两个字节表示的最大的数是"FF",也就是255,而一个int的范围远超过255,数据会溢出
用两个字符表示的,比如int a = 200;实际得到的值应该是0x00C8,就是byte b[0] = 0x00,byte b[1] = C8 是16进制字符串吗?两个字节表示的最大的数是"FF",也就是255,而一个int的范围远超过255,数据会溢出
是16进制字符串吗?两个字节表示的最大的数是"FF",也就是255,而一个int的范围远超过255,数据会溢出
char buf[9];
sprintf(buf, "%08x", 13);//0000000d