This is a standard trick for declaring a variable size structure. There is never just one entry in the color table; it has at least 2 for a monochrome bitmap, usually 256 for an 8bpp bitmap, etc. Designated by bmiHeader.biClrUUsed. Thus, the actual size of the structure depends on the format of the bitmap image.
C , . , malloc() , biClrUsed. (BITMAPINFO *) .