C语言十进制转十六进制函数
时间: 2023-09-09 17:08:19 浏览: 139
C语言实现十六进制数据转十进制数据
以下是一个将十进制数转换成十六进制数的C语言函数示例:
```c
#include <stdio.h>
void decimal_to_hex(int decimal_num, char hex_num[]) {
int i = 0, remainder;
while(decimal_num != 0) {
remainder = decimal_num % 16;
if(remainder < 10) {
hex_num[i++] = remainder + 48;
} else {
hex_num[i++] = remainder + 55;
}
decimal_num /= 16;
}
hex_num[i] = '\0';
strrev(hex_num); // 反转字符串
}
```
这个函数使用了循环和取模运算将十进制数转换为十六进制数,将转换后的十六进制数存储在一个字符数组中。在循环中,余数小于10时,将其转换为字符型数字并存储;余数大于等于10时,将其转换为字符型字母并存储。最后,使用字符串反转函数`strrev()`将存储在字符数组中的十六进制数反转,以便得到正确的十六进制数。你可以将需要转换的十进制数和一个空字符数组作为参数传递给这个函数,它将在字符数组中返回相应的十六进制数。
阅读全文