for (;;) {
//Something to be done repeatedly
}
Saya telah melihat hal semacam ini banyak digunakan, tetapi saya pikir ini agak aneh ... Bukankah lebih jelas untuk mengatakannya while(true)
, atau sesuatu seperti itu?
Saya menduga bahwa (seperti alasan banyak programmer untuk menggunakan kode samar) ini adalah margin kecil lebih cepat?
Mengapa, dan apakah itu sangat berharga? Jika demikian, mengapa tidak mendefinisikannya seperti ini:
#define while(true) for(;;)
Lihat juga: Mana yang lebih cepat: while (1) atau while (2)?
TRUE
harus dilakukan dengan C? Makro standar untuk hasil boolen benar di C99 masih true
. Dari mana TRUE
datangnya?
#define while(TRUE)
mendeklarasikan makro yang mengambil satu argumen yang disebut TRUE
tidak pernah digunakan, oleh karena itu mengubah setiap loop sementara di program Anda ke loop tak terbatas?
TRUE
berasal dari file header yang terkait dengan Windows API. Ini tidak terkait dengan VS 6.0 dengan cara apa pun. Dan, seperti yang saya katakan sebelumnya, itu tidak ada hubungannya dengan C atau C ++. Dalam C ++ literal "benar" adalah adil true
(dalam VS 6.0 juga), dalam C89 / 90 tidak ada hal seperti itu sama sekali, dan dalam C99 itu adalah makro true
. Ini berlaku untuk semua kompiler C / C ++.
TRUE
???