给我一个将0x15转为字符串15的C语言函数
以下是一个将十六进制数0x15转换为字符串"15"的C语言函数的示例代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char* hexToString(int num) {
char* str = (char*) malloc(3 * sizeof(char)); // 分配3个字符的空间,包括两个数字和一个结束符'\0'
if (str == NULL) {
printf("内存分配失败\n");
exit(1);
}
sprintf(str, "%02X", num); // 将十六进制数转换为字符串形式
return str;
}
int main() {
int num = 0x15;
char* str = hexToString(num);
printf("%s\n", str); // 输出结果为"15"
free(str); // 释放内存
return 0;
}
该函数使用sprintf函数将十六进制数转换为两位的十六进制字符串。然后,将字符串分配给动态分配的内存,并返回字符串指针。在主函数中,我们将0x15作为参数传递给函数,并将返回的字符串打印出来。最后,记得释放动态分配的内存以避免内存泄漏
原文地址: https://www.cveoy.top/t/topic/ifU7 著作权归作者所有。请勿转载和采集!