c语言char怎么转int,如char a[]="0xfa"转换成int c=0xfa

我想打印字符如下:

#include <stdio.h>
#include <string.h>
void main{
    char a[]="0xfa";
    char b[]="0x5c";
    int c=a;
    int c=b;
    printf("%c%c/n",(char)c,char(d));
}

int hex2int(char *s)
{
s++;
s++;
int i = 0;
while (*s)
{
i = i * 16;
if (*s >= 'a' && *s <= 'f') i += *s - 'a' + 10;
if (*s >= 'A' && *s <= 'F') i += *s - 'A' + 10;
if (*s >= '0' && *s <= '9') i += *s - '0';
s++;
}
return i;
}

调用
int c=hex2int(a);