请问C语言中将两个数组合并,并且合并后的数组无相同元素,怎么编程?求解答。

如题所述

数组类型 如果 是 4字节 int 型,想把它变成单字节流 用于发送。
大端/小端 自己 调整 一下 下面 的 下标就可以了。

#include

int main()

{

int SendByte[5]={0x00,0x01,0x02,0x03,0x04};

unsigned char sb[128];

int i,j,n=0;

for (i=0;i<5;i++) {

sb[i*4]= SendByte[i] & 0xff;

sb[i*4+1]= (SendByte[i] >> 8 ) & 0xff;

sb[i*4+2]= (SendByte[i] >> 16 ) & 0xff;

sb[i*4+3]= (SendByte[i] >> 24 ) & 0xff;

}

sb[5*4]='\0';

for (i=0;i<20;i++) printf("%x ",sb[i]);
printf("\n");

//========================
//假定数组SendByte[] 每个元素的值 不大于 0xff, 那么1个int 可用 1 字节 传送:
for (i=0;i<5;i++) sb[i]= (unsigned char) SendByte[i];

sb[5]='\0';

for (i=0;i<5;i++) printf("%x ",sb[i]);

printf("\n");

return 0;
}
温馨提示:答案为网友推荐,仅供参考
相似回答