Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Khác biệt giữa while(1) và while(0) trong C


Như chúng ta biết, trong C từ khóa 'while' định nghĩa vòng lặp hoạt động dựa trên điều kiện truyền vào. Điều kiện có giá trị true hoặc false: nếu true, khối lệnh lặp lại; nếu false, không thực thi.

Khi truyền đối số cho while, ta phân biệt while(1) và while(0): while(1) điều kiện luôn true -> lặp vô tận. Không chỉ 1, bất kỳ số nguyên khác 0 nào truyền vào while đều được coi là true.

Ngược lại, while(0) điều kiện luôn false -> khối lệnh không bao giờ chạy. Chỉ 0 làm false, bất kỳ số nguyên khác 0 (có thể âm) đều được coi là true.

Các điểm trên được minh họa qua ví dụ dưới đây.

Ví dụ

Ví dụ while(1)

#include 
using namespace std;
main(){
    int i = 0;
    cout << "Loop get started";
    while(1){
        cout << "The value of i: ";
        if(i == 10){ // khi i=10 thoát vòng lặp
            break;
        }
    }
    cout << "Loop get ended" ;
}

Kết quả

Loop get started
The value of i: 1
The value of i: 2
...
The value of i: 10
Loop gets ended

Ví dụ

Ví dụ while(0)

#include 
using namespace std;
main(){
    int i = 0;
    cout << "Loop get started";
    while(0){
        cout << "The value of i: ";
        if(i == 10){
            break;
        }
    }
    cout << "Loop get ended" ;
}

Kết quả

Loop get started
Loop get ended