What's the difference between the int and the long? They have the same range, both are 32-bit, and both can be signed or unsigned? What differences are there between the two? If not prechosen, should an int or a long be used? By "prechosen", I mean for things like the biWidth element in Windows' bitmapinfoheader structure which is a long.