关于DELPHI中对位图操作的问题
WINDOWS的一个位图结构如下:
typedef struct tagBITMAPINFO { // bmi
BITMAPINFOHEADER bmiHeader;
RGBQUAD bmiColors[1];
} BITMAPINFO;
为什么在VC中就可以进行如下操作:
for( int k = 0; k < 256; ++k){
BMIInfo->bmiColors[k].rgbBlue = (BYTE)k;
BMIInfo->bmiColors[k].rgbGreen = (BYTE)k;
BMIInfo->bmiColors[k].rgbRed = (BYTE)k;
BMIInfo->bmiColors[k].rgbReserved = 0;
}
但是明明bmiColors是[1],
在DELPHI中没法进行如上操作,K大于1它就出错!
这是怎么回事?