用c语言代码写一段循环取出数组里面的hex码
时间: 2024-12-17 11:29:37 浏览: 5
在C语言中,你可以遍历数组并逐个提取其中的十六进制字符,然后转换为对应的数字。这里假设有一个包含十六进制字符串的数组。以下是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
// 假设我们有这样一个十六进制字符串数组
char hexArray[5][2] = {"64", "3A", "20", "31", "37"};
void hexToString(char hex[], int index, char output[]) {
// 将单个十六进制字符转换为对应的ASCII值
unsigned char hexChar = hex[index];
output[index * 2] = hexChar >= '0' && hexChar <= '9' ? hexChar : hexChar - ('a' - 10); // 处理小写字母
output[index * 2 + 1] = hexChar >= 'A' && hexChar <= 'F' ? hexChar : hexChar - 10); // 大写字母
}
int main() {
for(int i = 0; i < sizeof(hexArray) / sizeof(hexArray[0]); i++) {
char decimalStr[3]; // 存放每个十六进制字符转换后的结果
hexToString(hexArray[i], 0, decimalStr); // 转换第一个字符
printf("Hex code: %s -> Decimal: %s\n", hexArray[i], decimalStr);
}
return 0;
}
```
这个代码会打印出每个十六进制字符串及其转换后的十进制形式。
阅读全文