for (;;) {
//Something to be done repeatedly
}
Tôi đã thấy loại thứ này được sử dụng rất nhiều, nhưng tôi nghĩ nó khá lạ ... Sẽ không rõ ràng hơn khi nói while(true)
, hoặc một cái gì đó dọc theo những dòng đó?
Tôi đoán rằng (đó là lý do để nhiều nhà lập trình sử dụng mã hóa) đây là một biên độ nhỏ nhanh hơn?
Tại sao, và nó thực sự có giá trị nó? Nếu vậy, tại sao không chỉ định nghĩa nó theo cách này:
#define while(true) for(;;)
Xem thêm: Cái nào nhanh hơn: while (1) hay while (2)?
TRUE
làm gì với C? Macro tiêu chuẩn cho kết quả boolen thực trong C99 vẫn còn true
. Nơi nào đã TRUE
đến từ đâu?
#define while(TRUE)
khai báo một macro có một đối số được gọi TRUE
là không bao giờ được sử dụng, do đó chuyển từng vòng lặp while trong chương trình của bạn thành một vòng lặp vô hạn?
TRUE
đến từ các tệp tiêu đề được liên kết với API Windows. Nó không liên quan đến VS 6.0 dưới bất kỳ hình thức nào. Và, như tôi đã nói trước đây, nó không liên quan gì đến C hay C ++. Trong C ++, nghĩa đen "thực sự" chỉ là true
(trong VS 6.0), trong C89 / 90 không có thứ gì như vậy cả, và trong C99, nó là vĩ mô true
. Điều này áp dụng cho tất cả các trình biên dịch C / C ++.
TRUE
???