Хотя, насколько я знаю, технически возможно, что int - это не 32 бита, я никогда не видел платформу, на которой это не так.Представьте себе - char, 8bit, short, 16bits, int, .. 24bits?Он просто не соответствует иерархии для int, который не является 32-битным.
Кроме того, вы можете использовать UINT_MAX для подтверждения размера int в данном компиляторе.