c语言中 怎么将一组16进制数加入一个数组

有一组16进制数 FA,FB,FC,FD,FE,FF
怎么将他加进我设的CHAR A【10】=“”这样的一个数组呢?

例:

#include <stdio.h>

#include <string.h>

char sDec[4] = {0x05,0xc5,0xb3,0xea};

//把 0x05,0xc5,0xb3,0xea 组合成一个十六进制数 0x05c5b3ea ,

//并且把 0x05c5b3ea  转换成十进制数。

unsigned int i,v;

int main() {

v=0;

for (i=0;i<4;i++) v|=((unsigned int)sDec[3-i]&0xFFu)<<(i*8);

printf("0x%x,%u\n",v,v);

return 0;

}

//0x5c5b3ea,96842730

扩展资料

十进制字符串转换为十进制数

char *str = "123";

int n = atoi(str);

printf("%d\n", n);

//输出:123

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-23

可以在16进制数前加"0x"然后输入数组。

如要在数组char a[5]中输入FA,FB,FC,FD,FE,FF五个十六进制数,可以如下处理:

char a[5] = {0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF};

由于两位16进制长度为8bit,正好可以容纳一个两位16进制数;对于其他类型的数组,可如法炮制,只需留意数据的范围。

第2个回答  推荐于2017-09-19
0xXX 就是16进制数。
#include<stdio.h>
main()
{
char a[10]={0XFA,0XFB,0XFC,0XFD,0XFE,0XFF};
int i;
for (i=0;i<10;i++) printf("%2X ",0xff & a[i]);
return 0;
}本回答被提问者和网友采纳
第3个回答  2019-07-24
CHAR A[ ]="\xFA\xFB\xFC\xFD\xFE\xFF";
第4个回答  2012-06-14
char类型就是8位的int型,可以直接直接复制
char A[10] = { 0XFA, 0XFB, 0XFC, 0XFD, 0XFE, 0XFF};
相似回答