怎样把一个INT类型的数据;转换成16进制。并且按高中低数据位分别存储在A、B、C变量中。例如:
   int i=12345
   unsigned char a[2];
   a[0]=?;
   a[1]=?
   a[2]=?;
把12345 按十六进制分别存储在数组a中。

解决方案 »

  1.   

    unsigned char a[2];
       a[0]=?;
       a[1]=?
       a[2]=?;
    ???
    unsigned char a[5];
    int n=12345;
    sprintf((char*)a,"%04X",n);
      

  2.   

    delay = 12345
    sprintf(s, "%x", delay); strp.Format("%s", s);        if (strp.GetLength()%2 == 0)
            a[2] = strp.Right(2)
            a[1] = strp.Mid(strp.GetLength()-4, 2)
            .......
      

  3.   

    int n=12345;
    unsigned char a[2];
    a[0]=(char)(n&0xff00);
    a[1]=(char)(n&0xff0);
    a[2]=(char)(n&0x0ff);