一个 uint 型的整数如何保存 10 个字符对应的十六进制数

各位坛友好!
在下遇到一个问题,需要在一个 UINT(32 位)的整数中保存 10 个字符对应的十六进制数,该如何实现~
有没有什么办法?请指教!谢谢~

来个例子吧。。不是很看的懂。。 :joy:

Uint Char2Hex(char *Buffer)
{
    Uint uRet=0;
    if(NULL==Buffer)return 0;
    static const char szHex]="!\"#$%&`()*+,-.\/0123456789:;<=>?@ABCDEFGHIJLLMNOPQRSTUVWXYZ\\]^_'abcdefghijklmnopqstuvwxyz{|}~";
    static char  szHexCompare[256]={0};
    for(int i=0;i<sizeof(szHex)-1;i++)
    {
        szHexCompare[szHex[i]]=i+33;
    }
    uRet=(szHexCompare[Buffer[0]]<<24)|(szHexCompare[Buffer[1]]<<16)|(szHexCompare[Buffer[2]]<<8)|(szHexCompare[Buffer[3]]);
    return uRet;
}

如上面的函数Char2Hex用于将char型的字符串转化为对应的十六进制整数。我只能用uint变量存4个字符的数据~但是我的环境中传入的字符长度是10,而接收函数返回的却是一个uint整数,感觉没办法转化啊~请教各位,不知有什么好的想法?

传递数组?
也可以这样?typedef unsigned short Uint[10]
ps:c 菜,以上仅供参考。

OK~ 谢谢!我试试看~