Also known as a raster image. They can be reduced in size, but if you enlarge them the results are usually horrific unless everything in the image is perfectly rectilinear. You can't add resolution to a bitmap because there is no information to describe what should be happening between the pixels. When it's rectilinear, you can just double (or whatever) everything and it's still rectilinear.
Most users do not understand the difference between raster and vector files, and will become bitterly resentful if offered an explanation.
The Windows .bmp format is pleasant from a programmer's perspective because it's adequately documented, and (barring run-length encoding) essentially identical to what's stored in memory. The only problem is that, just to keep us guessing, the colors of the pixels are stored in RGBQUAD structs, with a byte order different from that used in the more common COLORREF type, even though both are 32 bits in size and a union would often be convenient.