char searchalarm[8];
          CString alarmvalue="";   
         alarmvalue+=charRx[start];
alarmvalue+=charRx[start+1];
//这段没什么从char数组里面取2个字符
sscanf(alarmvalue, "%x", &value);
for(int count=0;count<8;count++)
searchalarm[count]='-';//数组的初始化不知道“-”什么意思这是个int数组“-”是不是相当于NULL
_itoa(value,searchalarm,2);//转化为2进制
findnone=0;
for(findnone=0;findnone<8;findnone++)
if(searchalarm[findnone]==NULL)//判断int数组元素是否为空
break;重点就是  sscanf(alarmvalue, "%x", &value);
             searchalarm[count]='-';
          不太清楚
帮我详细解说下 谢谢

解决方案 »

  1.   

    1
    searchalarm[count]='-';//数组的初始化不知道“-”什么意思这是个int数组“-”是不是相当于NULL不是
      

  2.   

    2
    sscanf(alarmvalue, "%x", &value);

    把CString类型的alarmvalue中的数据
    转化为十六进制数,赋予value变量
      

  3.   

    谢谢shadowWind(欧要开始学jb啦,呼呼) 但是“-”符号怎么可以赋给一个int型的变量呢?
      

  4.   

    是把'-'的ascii码赋给int变量它是0~255之间的一个数值,具体是哪个可以查ascii码表,
    或者在程序里设个断点,看看变量值就知道了
      

  5.   

    你的意思只是简单的初始化而已  可以是null或者别的值  当然 用“-”还搞的这么麻烦就是避免用 null  还有这里没有用new分配内存空间   不知道会不会带来很严重的后果 
    比如指针指向一个非期望的位置
      

  6.   

    JB 是代表 JavaBean JBuilder  还是其他的什么啊?
    :)
      

  7.   

    jbuilder.....
    好久没改昵称了 汗
    早就不用那个了现在用vc做东西
      

  8.   

    ps
    "-"和'-'不一样的,
    这里用"-"就会出错,因为它是字符串,不是单个字符,也就不能转成ascii值你说的指针是指哪个?
    好像没看到什么不安全的东西
      

  9.   

    哦 知道了 是后来有read为写的问题 我瞎猜的