关闭

ASCII码转换16进制码

911人阅读 评论(0) 收藏 举报

typedef unsigned char   *P_U8;
#define SCI_ASSERT(_EXP)    assert(_EXP)

 

//----------------------------------------------------------------------
//ASCII码转换16进制码
//----------------------------------------------------------------------
const U8    MN2_CON_KnlHexStr[] = "0123456789ABCDEF";
int MN2_KNL_AsciiToHex( P_U8 pHexTxt, P_U8 pAscTxt, int iAscTxtLen )
{
    register P_U8   pHexStr;
    register P_U8   pAscCur;
    register int    Index;
    P_U8            pAscEnd;


    SCI_ASSERT( pHexTxt );
    SCI_ASSERT( pAscTxt );
    pHexStr = pHexTxt;
    pAscCur = pAscTxt;
    pAscEnd = pAscTxt + iAscTxtLen;
    while( pAscCur < pAscEnd )
    {
        Index = *(pAscCur) >> 4;
        *pHexStr++ = MN2_CON_KnlHexStr[Index];
        Index = *(pAscCur) & 0x0F;
        *pHexStr++ = MN2_CON_KnlHexStr[Index];

        pAscCur++;
    }

    return (iAscTxtLen * 2);
}
 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:14991次
    • 积分:305
    • 等级:
    • 排名:千里之外
    • 原创:14篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章分类