ほとんどのプログラマーは、移植性を確保するために typedef を使用していると読みました。
たとえば、次のように書きます。
typedef int int16_t
typedef unsigned int uint16_t
int16_t が int と同じである限り (唯一の変更は名前です)、移植性はどこにあるのでしょうか?! int を直接使用してはいけないのはなぜですか?!
別の質問: 異なるマイクロコントローラーでは、int のサイズは一定ではありません。たとえば、AVR 32
int のサイズ = 4 バイトですが、AVR 8-bit
int のサイズ = 2 バイトです。
それは何に依存し、マイクロコントローラの変更でなぜ変わるのか?!