高分求助!Unsigned long int 如何转换为 Unsigned Char[4]。高位在前!

zl198183 2007-10-22 09:37:00
Unsigned long int 如何转换为 Unsigned Char[4]。高位在前!
...全文
369 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
FengSC 2007-10-23
  • 打赏
  • 举报
回复
(unsigned char*)&
shadowstar 2007-10-22
  • 打赏
  • 举报
回复
unsigned long int un;
unsigned char uc[4];
unsigned char* p;

p = (unsigned char*)&un;
uc[0] = p[3];
uc[1] = p[2];
uc[2] = p[1];
uc[3] = p[0];
fjye 2007-10-22
  • 打赏
  • 举报
回复
#include <winsock2.h>


char p[4]={0};
u_long a;
a = 12345678;
memcpy(p,&a,4);//原顺序
a = htonl(12345678);
memcpy(p,&a,4);//高位在前的网络字节序
i_love_pc 2007-10-22
  • 打赏
  • 举报
回复
memcpy
要转换顺序就用数组排序
玄之丞 2007-10-22
  • 打赏
  • 举报
回复
shadowstar 正解
jacknes009 2007-10-22
  • 打赏
  • 举报
回复
用移位的方法也可以哦,
p[3] = a & 0xff;
p[2] = (a >> 8) & 0xff;
p[1] = (a >> 16) & 0xff;
p[0] = (a >> 24) & 0xff;

过客猫2022 2007-10-22
  • 打赏
  • 举报
回复
用共用体union
union v
{
unsigned long int un;
char uc[4];
};

v.un = 12345678;
这样v.uc即呆转换后的数据

13,871

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧