有现成的函数吗?可将一个表示十六进制数的字符串转换为一个8位的整型?

解决方案 »

  1.   

    字符转为整型数用 atoi 就可以了,是int型的
    再用(unsigned char)将它强制转换为unsigned char应该可以了
      

  2.   

    不是这样的。
    举个例子,现有一个字符串“1234”,它代表的就是一个十六进制数0x1234。
    若用atoi最终得到的结果是0x4D2了。还有,我描述有误,最终输出是int64,8个字节非8位。
      

  3.   

    楼上的楼上,
    sscanf(strvalue,"%x", &intger);============================================================================
    提问题时要在标题中简明扼要的说明                    给我发信息请附带原帖地址
    http://www.betajin.com/alphasun/index.htm           
    http://alphasun.18en.com/                    http://shakingtoolkit.9126.com/
    DocWizard C++程序文档自动生成工具 | Wave OpenGL | HttpProxy | AjaxParser词法分析
      

  4.   

    在MSDN中索引StrToInt64Ex可以找到你所需要的:DStrToInt64Ex
    Converts a decimal or hexadecimal string to a 64-bit integer.BOOL StrToInt64Ex(
        LPCTSTR pszString,
        DWORD dwFlags,
        LONGLONG * pllRet
        );...Requirements 
      Version 5.00 and later of Shlwapi.dll
      Header: Declared in shlwapi.h. 
      Import Library: shlwapi.lib.
      

  5.   

    byte16to2(LPBYTE byIn, int *intOut)
    {
    int tmpi = 0;
    int tmpj = 0;
    for(tmpi=0 ; tmpi <8 ; tmpi ++)
    {
    for(tmpj = 0 ; tmpj <8 ; tmpj ++)
    {
    intOut[tmpi * 8 + 7 - tmpj] = byIn[tmpi]%2;
    byIn[tmpi] = byIn[tmpi] >> 1;
    }
    }
    }
    这里输出的是整型数组,
    不知是不是你想要的!