for (;;) {
//Something to be done repeatedly
}
こういうのがよく使われているのを見てきましたが、なかなかおかしいと思いますが…とか、そういうふうに言った方がわかりやすいと思いませんwhile(true)
か?
私は(プログラマーの多くが暗号コードに頼る理由と同じように)これがわずかなマージンであると思っていますか?
なぜ、そしてそれは本当に価値があるのでしょうか?もしそうなら、なぜそれをこのように定義しないのですか:
#define while(true) for(;;)
参照:どちらが速いか:while(1)またはwhile(2)?
TRUE
C とは何の関係があるのですか?C99での真のブール結果の標準マクロはまだtrue
です。どこTRUE
から来たのですか?
#define while(TRUE)
呼び出されTRUE
た1つの引数を取るマクロを宣言するためのそのマクロは使用されないため、プログラム内のすべてのwhileループを無限ループに変換しませんか?
TRUE
は、Windows APIに関連付けられたヘッダーファイルから取得されます。VS 6.0とはまったく関係ありません。そして、前に言ったように、それはCやC ++とは何の関係もありません。C ++では、「真の」リテラルはtrue
(VS 6.0でも)ちょうどですが、C89 / 90ではまったくそのようなものはなく、C99ではマクロtrue
です。これはすべてのC / C ++コンパイラに適用されます。
TRUE
??? とは