c语言 中ascii码转16进制函数
时间: 2023-09-04 15:16:18 浏览: 339
ASCII码转16进制代码
在C语言中,可以使用sprintf函数将ASCII码转换为16进制字符串。下面是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
void ascii_to_hex(char* str, char* hex)
{
int i = 0;
while (str[i])
{
sprintf(&hex[i*2], "%02X", str[i]);
i++;
}
}
int main()
{
char str[] = "Hello World!";
char hex[2*strlen(str)+1];
ascii_to_hex(str, hex);
printf("%s\n", hex);
return 0;
}
```
这段代码将字符串"Hello World!"转换为16进制字符串,输出结果为"48656C6C6F20576F726C6421"。其中,sprintf函数的格式化字符串"%02X"表示输出两个字符的16进制数,并且不足两位时前面补零。
阅读全文