1. Giới thiệu
Ngôn ngữ C là một ngôn ngữ quan trọng để học các kiến thức cơ bản về lập trình. Trong đó, kiểu dữ liệu bool
là không thể thiếu khi xây dựng các cấu trúc điều khiển như câu lệnh rẽ nhánh và vòng lặp. Bài viết này sẽ giới thiệu cách sử dụng cơ bản và các ví dụ thực tiễn về kiểu bool
trong C, giúp người mới bắt đầu đến trung cấp nắm vững kiến thức này.
2. Kiểu bool
là gì?
2.1 Định nghĩa và đặc điểm
Kiểu bool
là kiểu dữ liệu chỉ có hai giá trị: đúng (true
) hoặc sai (false
). Nó còn gọi là giá trị logic và được sử dụng để kiểm tra điều kiện trong các cấu trúc rẽ nhánh hoặc lặp lại của chương trình. Kiểu bool
trong C được giới thiệu từ chuẩn C99. Trước đó, người ta thường dùng kiểu số nguyên để biểu diễn giá trị logic.
2.2 Giới thiệu kiểu bool
trong C
Để sử dụng kiểu bool
trong C, bạn cần thêm file tiêu đề <stdbool.h>
. Sau khi import file này, các từ khóa bool
, true
và false
sẽ khả dụng.
#include <stdbool.h>
bool isProgrammingFun = true;
bool isFishTasty = false;
Như ví dụ trên, biến kiểu bool
có thể nhận giá trị true
hoặc false
.
3. Cách sử dụng kiểu bool
trong C
3.1 Khai báo và khởi tạo
Để khai báo biến kiểu bool
, hãy dùng từ khóa bool
và thường khởi tạo với true
hoặc false
.
bool isProgrammingFun = true;
bool isFishTasty = false;
Trong ví dụ trên, isProgrammingFun
có giá trị true
, còn isFishTasty
là false
.
3.2 Cách xuất giá trị kiểu bool
Khi in giá trị kiểu bool
trong C, nó sẽ được hiển thị dưới dạng số nguyên. true
là 1
, false
là 0
, do đó hãy dùng %d
trong hàm printf
.
printf("%d", isProgrammingFun); // In ra 1 (true)
printf("%d", isFishTasty); // In ra 0 (false)
Hãy nhớ rằng giá trị kiểu bool
sẽ được in ra là 1
hoặc 0
.
4. Kiểu bool
và toán tử so sánh
4.1 Các toán tử so sánh cơ bản
Kiểu bool
thường được sinh ra từ kết quả của các biểu thức điều kiện sử dụng toán tử so sánh như >
, <
, ==
, v.v. Kết quả của các biểu thức này là true
hoặc false
.
printf("%d", 10 > 9); // In ra 1 (true)
printf("%d", 5 == 5); // In ra 1 (true)
printf("%d", 3 < 2); // In ra 0 (false)
4.2 Ví dụ thực tế
Hãy xem ví dụ dùng câu lệnh if
để kiểm tra điều kiện. Khi biểu thức điều kiện của if
là true
, khối lệnh bên trong sẽ được thực hiện.
int x = 10;
int y = 9;
if (x > y) {
printf("x lớn hơn y
");
} else {
printf("x nhỏ hơn hoặc bằng y
");
}
Trong ví dụ này, vì x
lớn hơn y
nên sẽ in ra “x lớn hơn y”.

5. Sử dụng kiểu bool
trong hàm
5.1 Sử dụng làm giá trị trả về
Kiểu bool
cũng được dùng làm giá trị trả về cho hàm. Ví dụ, có thể viết một hàm kiểm tra một số có phải là số chẵn hay không bằng cách sử dụng bool
.
#include <stdbool.h>
bool isEven(int number) {
return number % 2 == 0;
}
int main() {
printf("%d
", isEven(4)); // In ra 1 (true)
printf("%d
", isEven(7)); // In ra 0 (false)
return 0;
}
Hàm này trả về true
(1) nếu số truyền vào là số chẵn, còn số lẻ thì trả về false
(0).
5.2 Ví dụ nâng cao
Kiểu bool
còn được ứng dụng trong kiểm tra hợp lệ dữ liệu nhập vào form hoặc các vấn đề bảo mật. Ví dụ, kiểm tra người dùng đủ tuổi chưa bằng bool
:
bool isValidAge(int age) {
return age >= 18;
}
Hàm này trả về true
nếu tuổi lớn hơn hoặc bằng 18.
6. Ứng dụng thực tế của kiểu bool
6.1 Trí tuệ nhân tạo và máy học
Kiểu bool
còn được dùng để kiểm tra điều kiện trong lĩnh vực trí tuệ nhân tạo, máy học, ví dụ xác định một bức ảnh có phải là ảnh mèo hay không. bool
giúp kiểm tra trạng thái thỏa mãn điều kiện.
6.2 Ví dụ code thực tế
Ví dụ kiểm tra độ tuổi đủ điều kiện đi bầu cử:
int myAge = 25;
int votingAge = 18;
if (myAge >= votingAge) {
printf("Bạn đã đủ tuổi để bỏ phiếu!
");
} else {
printf("Bạn chưa đủ tuổi để bỏ phiếu.
");
}
Vì myAge
lớn hơn votingAge
nên sẽ in ra “Bạn đã đủ tuổi để bỏ phiếu!”.
7. Tổng kết
Kiểu bool
là kiểu dữ liệu không thể thiếu khi lập trình điều kiện và vòng lặp trong C. Bài viết đã giới thiệu cách sử dụng cơ bản, kết hợp với toán tử so sánh và ứng dụng trong hàm. Hi vọng bạn sẽ vận dụng kiến thức này để phát triển các chương trình phức tạp hơn.