有一个 CHAR[4]={0xee,0x18,0x22,0x33}要转为LONG 型怎么转?还有个问题 如果要生成 CHAR[4] 4这个数字是程序中计算产生的,怎么做?比如说  计算出是 5 就 CHAR[5] 计算出是 10000 就 CHAR[10000]

解决方案 »

  1.   

    你要结果如何?
    0x332218ee的话直接强制转换2. new CHAR[n]
      

  2.   

    有代码吗?顺便问一下 INT 是分配4个字节吗?
      

  3.   

    数组里面是4个数啊,转成一个long,要转成什么形式的?
    int是4个字节,不知道的时候,可以用sizeof运算符来判断。
      

  4.   

    chan ca[4] = {......};
    long l = 0;
    memcpy(&l,ca,sizeof(ca));
      

  5.   

    那比如说 是 char[100]
    我要把 前50 个转为CString  怎么转?
      

  6.   

    那比如说 是 char[100]
    我要把 前50 个转为CString  怎么转?
    char a[100] = {...};
    a[50] = 0;
    CString str(a);
      

  7.   

    TCHAR nodeData[0x14EE-1];
    filewrite.Write(nodeData, sizeof(nodeData));  正常 
      TCHAR *nodeData = new TCHAR[0x14EE-1];
    filewrite.Write(nodeData, sizeof(nodeData));就不正常 是怎么回事啊
      

  8.   

    new出来的sizeof读的是char*的大小,即32位机下是4filewrite.Write(nodeData, sizeof(TCHAR)*(0x14EE-1));
      

  9.   

    sizeof(TCHAR)*(0x14EE-1)); 正常 谢谢了那64位下跑就会有问题了? 写的文件就会变大?
      

  10.   

    那比如说 是 char[100]
    我要把 前50 个转为CString  怎么转?