返回信息流32位机
如果定义一个char[10]数组,
能不能用char[0]--char[3]表示一个unsigned long数据(这个数据比较大)呢?
如果可以的话,需要怎么操作呢?
多谢。。
这是一条镜像帖。来源:北邮人论坛 / cpp / #43974同步于 2010/9/16
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
关于unsigned long转char的问题
cl233
2010/9/16镜像同步5 回复
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
这样?
void convert(unsigned long num, unsigned char *res) {
int i;
for (i = 0; i < 4; i++)
*(res + i) = *((unsigned char *)&num + i);
}
可以啊。
看linux 的in6_addr
用一个union来实现。
union test
{
u_int8_t h[16];
u_int32_t b[4];
};
【 在 cl233 (潜龙5用) 的大作中提到: 】
: 32位机
: 如果定义一个char[10]数组,
: 能不能用char[0]--char[3]表示一个unsigned long数据(这个数据比较大)呢?
: ...................
char str[10];
unsigned long ul;
*((unsigned long*)str) = ul;
【 在 cl233 (潜龙5用) 的大作中提到: 】
: 32位机
: 如果定义一个char[10]数组,
: 能不能用char[0]--char[3]表示一个unsigned long数据(这个数据比较大)呢?
: ...................