字符串转十六进制数字c语言代码,要求能传入字符串参数,返回十六进制数字
时间: 2023-11-09 16:02:19 浏览: 80
字符串转十六进制数字
你好!感谢您的提问。关于您的问题,以下是代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char str[100];
printf("请输入需要转换的字符串:");
scanf("%s", str);
int len = strlen(str);
int i, res = 0;
for (i = 0; i < len; i++)
{
int num = 0;
if (str[i] >= '0' && str[i] <= '9')
{
num = str[i] - '0';
}
else if (str[i] >= 'a' && str[i] <= 'f')
{
num = str[i] - 'a' + 10;
}
else if (str[i] >= 'A' && str[i] <= 'F')
{
num = str[i] - 'A' + 10;
}
else
{
printf("输入字符串不合法!\n");
return -1;
}
res = res * 16 + num;
}
printf("转换后的十六进制数字为:%X\n", res);
return 0;
}
```
您可以调用这个函数,将需要转换的字符串作为参数传入,即可得到转换后的十六进制数字。希望能帮到您!
阅读全文