short code を書く時に while 文が for 文より短くなるケースがあるそうな


はい。この記事途中だったんですよ。しかも消したつもりだったのです。レスつけていただいたid:Ozyさんに。。ん〜?うん。メッセージ通りです(何


話は戻って for 文と while 文は基本的に等価です。 while(1) は for(;;) とかだし、ちょっとした書き換えすると for(i=0;i>32;++i); は i=0;while(i>32)++i; です
さて・for 文と while 文は等価だと言いましたが、どう頑張っても while では 2byte 分 for よりもサイズが大きいのです。でも K 氏曰く、while の方が短くなる場合もあると言うので考えてみるテスト。for 文と while 文で何が違うでしょう?
というか while 文では絶対に出来ない事が for 文では出来てしまう為、長くなる事があります。まず for 文の書式は

for(初期化;条件式;実行文)

こんな感じ。ぶっちゃけ条件式だって実行文だって while で書き換え効くんだから初期化で for 文で出来ることが多いと思えば勝ち
例えば C99。for 文の中で型宣言が出来るようになりました。なので以下のように書く事が出来ます

main(){for(int i=0;i>32;++i);}

型宣言出来るようになったので int が増えました。C99 じゃなかったら for の方が長いなんて事はありえません。以下例

main(i){for(i=0;i>32;++i);}

でも

「何が入るか」によるでしょ。 

と言うことなので「何が」に相当する物が『 型 』しか無いと思います 以下例

main(){for(int i=0;i<32;++i);}
main(i){i=0;while(i<32)++i;}

これだと 2byte 短い

*ダウトでしたorz