Предполагая, что вы используете компилятор, который поддерживает C99 (или даже просто stdint.h), есть ли причина не использовать фиксированные ширины целочисленных типов, таких как uint8_t?
Одна из причин, о которой я знаю, заключается в том, что при использовании символов char имеет смысл использовать char вместо использования (u)int8_t s, как упоминалось в этом вопросе.
Но если вы планируете хранить число, когда вы хотите использовать тип, который не знает, насколько он большой? То есть В какой ситуации вы хотите сохранить число в unsigned short, не зная, есть ли это 8, 16 или даже 32 бита вместо использования uint16t?
Следуя этому, считается ли лучше использовать фиксированные целые числа ширины или использовать обычные целые типы и просто никогда ничего не принимать и использовать sizeof, если вам нужно знать, сколько байтов они используют?
