BYTE b_desult;
  BYTE zb_kontent[1];
  这两个变量有什么区别?既然是只有一个元素的数组,还有必要定义成数组吗?但愿问其详。

解决方案 »

  1.   

    有啊,比如BYTE zb_kontent[1];
    那么zb_kontent就是一个指针,它可以指向一个字符串,一个数据流,也可以说它还相当于BYTE *zb_kontent
      

  2.   

    BYTE zb_kontent[1];这种写法往往是定义在结构中作为变长数组。
      

  3.   

    数组名可以直接作为地址传给函数的参数.
    而普通变量则需要加上 & 操作符
      

  4.   

    位图格式里就有这个只有一个元素的数组的东西:
    struct BITMAPCOREINFO
    {
    BITMAPCOREHEADER bmciHeader ;   // core-header structure
    RGBTRIPLE  bmciColors[1] ;// color table array
    };
    pbmci = malloc (sizeof (BITMAPCOREINFO) + 255 * sizeof (RGBTRIPLE)) ;
    //然后可以这样存取RGBTRIPLE结构:
    pbmci->bmciColors[i];//i>=0 && i<256