在c语言中如何把一个十进制数组强制转换成十六进制的数组
时间: 2023-06-27 09:01:17 浏览: 391
单精度浮点数与十六进制转换_C语言程序
5星 · 资源好评率100%
可以使用sprintf函数将十进制数组转换为十六进制字符串,然后将字符串中的字符存储到十六进制数组中。
示例代码如下:
```c
#include <stdio.h>
int main() {
int decimalArr[] = {15, 63, 255};
int length = sizeof(decimalArr) / sizeof(decimalArr[0]);
char hexStr[length * 2 + 1]; // 一个十进制数对应两个十六进制字符,加上字符串结束符'\0'
for (int i = 0; i < length; i++) {
sprintf(hexStr + i * 2, "%02X", decimalArr[i]); // 将每个十进制数转换为两个十六进制字符
}
printf("Hexadecimal array: ");
for (int i = 0; i < length * 2; i++) {
printf("%c ", hexStr[i]); // 打印十六进制数组的每个元素
}
return 0;
}
```
输出结果:
```
Hexadecimal array: 0F 3F FF
```
阅读全文