0 から 65535 までループする多数の数値があります (適切なカットオフ ポイントを得るために、単純に 16 ビットを選択しました)。int をインクリメントしていますが、int が 65536 かどうかを確認する if ステートメントがあります。そうであれば、int を 0 に設定します。少しぎこちないですが、うまくいきます。short int を使用してオーバーフローさせる方がはるかに効率的であることはわかっていますが、short は 2 バイトであることが保証されていないため、最初はそうしませんでした。
これは、Linux (ubuntu) マシンで実行される C コードです。短いものを使用し、後でこのプログラムを別のOSで実行することにした場合(または、現在32ビットマシンでテストしているため、64ビットマシンで実行する場合)、かなりの可能性があります私のショートはまだ2バイトになりますか?いくつかの異なるマシンで簡単にテストできますが、ここにいる人の中には、たくさんのコンピューターで作業したことがある人もいます。私が気をつけなければならない恐ろしい落とし穴はありますか?