读书人

十六进制给字符数组或字符串指针赋值,

发布时间: 2012-05-21 18:04:41 作者: rapoo

十六进制给字符数组或字符串指针赋值
代码如下

C/C++ code
typedef unsigned char    ubyte;ubyte* buffer=NULL;buffer = new ubyte[3];buffer[0] = 0xa1;buffer[1] = 0xb2;buffer[2] = 0xc3;//我目前是这样赋值的//有没有办法可以类似 buffer = 0xa1b2c3;或者buffer = new ubyte[3]{0xa1,0xb2,0xc3};的方式赋值。//因为我要放在for循环里面,随机给buffer开辟空间,赋值。


[解决办法]
木有见过;
[解决办法]
帮顶
[解决办法]
C/C++ code
typedef unsigned char    ubyte;union buff{    int a;    ubyte buffer[4];};int main(int argc, char **argv){         buff buff1;    buff1.a=0xa1b2c3;    printf("%c\n",buff1.buffer[1]);    printf("%c\n",buff1.buffer[2]);    printf("%c\n",buff1.buffer[3]);        system("pause");     return 0; }
[解决办法]
直接memcpy咯。

纯指针操作就是了。
[解决办法]
memcpy
[解决办法]
memcpy(dst, src, len)
[解决办法]
楼主要求的是效率,效率问题!有前途。
[解决办法]
探讨
哎,我的意思是比如我建立一个unsigned char[256] b
然后如何将0x00 到0xFF 依次插入到b里面去呢?

读书人网 >C++

热点推荐