首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

请问一般来说,一个int是4个char。 想把这个int存储为4个char怎么做

2012-02-24 
请教一般来说,一个int是4个char。 想把这个int存储为4个char如何做?好像要按位取与还是或?是不是如此?大家

请教一般来说,一个int是4个char。 想把这个int存储为4个char如何做?
好像要按位取与还是或?
是不是如此?

大家给个效率最高的方法
函数原型

char   *   IntTo4Char(int   _iParam){
              //return
}

[解决办法]
char c[4];
int i = 100;
*(int *)(&c) = i;
[解决办法]
char sz[4]=;
void IntTo4Char(int _i,char* p){
memcpy(p,&_i);
}
[解决办法]
union test
{
char c[4];
int i;
}t;

char * IntTo4Char(int _iParam){
t.i=_iParam;
return t.c;
}
[解决办法]
利用联合体共用内存的特性,
直接赋值即可完成指定功能 ~

不过需要注意一个问题,
就是字节序的问题!!

热点排行