C语言 字符串转换成16进制
时间: 2023-09-12 13:05:12 浏览: 265
字符串转换成16进制
4星 · 用户满意度95%
在 C 语言中,字符串转换成16进制可以使用 `sprintf` 函数。以下是示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char string[] = "Hello World";
unsigned char hex_string[2 * strlen(string) + 1];
int i;
for (i = 0; i < strlen(string); i++) {
sprintf((char*)(hex_string + 2 * i), "%02x", string[i]);
}
printf("%s\n", hex_string);
return 0;
}
```
其中,`sprintf` 函数把每个字符转换成两个十六进制数字,存储在 `hex_string` 数组中,最后输出。注意,在 C 语言中,字符串以 '\0' 结尾,因此 `hex_string` 数组大小为 `2 * strlen(string) + 1`。
阅读全文