就是将字符的ascII码转换为数字,找ascII表看一下就明白了65就是大写的A,97就是小写的a

解决方案 »

  1.   

    先看下面再看上面
    chr-48后是什么东西?
    ----------------------
    '1'-'0'=1
    就是'1'的数值chr-48-65是什么东西 
    ------------------
    chr没有变化,因为之前的-48存储在临时变量里,所以只有chr-65
    'B'-'A'=1
    这里是为了判断它是否是十六进制中的A-F
    *cint=(cTmp+10);
    就是变成16进制中的值,比如'B'变成11
      

  2.   

    至于那个flag
    感觉是为了对付"12 32"这样的字符串,
    看样子是将字符串两两转化
    如果有空格分隔,则flag=1,否则为0
      

  3.   

    LZ看一下ASCCII表,如果字符'0'要变为数字0,那就是得减去48,即'0'-48=0(数字),因为字符'0'对应的十进制是48.其他就看ASCCII表吧.
      

  4.   

    "123ABC" 转换成 0X123ABC 16进制
    flag 表示是否为unicode码。
      

  5.   

    flag   表示是否为unicode码
    -------------------------
    我对这个码那个码还不是太懂,能不能解释一下...
    好像unicode码是双字节的吧,在上面怎么体现的?
      

  6.   

    至于那个flag 
    感觉是为了对付"12   32"这样的字符串, 
    看样子是将字符串两两转化 
    如果有空格分隔,则flag=1,否则为0
    ===========================================
    同意
      

  7.   

    shakaqrj说的我明白了。我没仔细看。。另外还有个data[j]=(data[j] < <4)+cTmp    表示的什么   flag表示什么也没太明白
      

  8.   

    data[j]   <   <4
    因为是转换成16进制,这样相当于*16
      

  9.   

    if(flag==1)  成立表示数据串中每两个数据间空格