Kiểu dữ liệu bool, viết tắt của "boolean," là một kiểu dữ liệu trong lập trình được sử dụng để biểu thị giá trị logic của một biểu thức hoặc một biến. Kiểu dữ liệu bool chỉ có hai giá trị có thể có: true (đúng) và false (sai). Đây là một phần quan trọng trong tất cả các ngôn ngữ lập trình, đặc biệt là trong việc kiểm tra các điều kiện và quyết định luồng thực thi của chương trình. Hôm nay chúng ta cùng nhau tìm hiểu về kiểu dữ liệu bool trong C++.

1. Cách khai báo kiểu dữ liệu bool trong C++

bool isTrue = true;
bool isFalse = false;


Trong đó, isTrue có giá trị true (đúng) và isFalse có giá trị false (sai).

 

2. Các toán tử liên quan đến kiểu dữ liệu bool

Xem thêm bài viết:

- Xử lý Array trong C++

- Các cách phổ biến để nhúng CSS vào HTML

- Thẻ a trong HTML 
2.1 Toán tử so sánh với kiểu dữ liệu bool

Chúng ta lấy ví dụ sau để hiểu rõ hơn cách hoạt động của các toán tử quan hệ:

Tuổi của A là 10, tuổi của B là 15. Sử dụng các toán tử quan hệ cho tuổi của 2 người này, ta được bảng kết quả như sau:

  Toán tử       Phép so sánhKết quả           
   ==So sánh tuổi của A có BẰNG với tuổi của B hay không?FALSE
   !=So sánh tuổi của A có KHÁC với tuổi của B hay không?TRUE
   >So sánh tuổi của A có LỚN HƠN so với tuổi của B hay không?FALSE
   <So sánh tuổi của A có NHỎ HƠN so với tuổi của B hay không?TRUE
   ≥So sánh tuổi của A có LỚN HƠN HOẶC BẰNG với tuổi của B hay không?FALSE
   ≤So sánh tuổi của A có NHỎ HƠN HOẶC BẰNG với tuổi của B hay không?TRUE

2.2 Toán tử logic với kiểu dữ liệu bool

Chúng ta sử dụng các toán tử quan hệ (relational operators) để kiểm tra một biểu thức mệnh đề cụ thể đúng hay sai, nhưng chúng chỉ có thể kiểm tra 1 mệnh đề tại 1 thời điểm. Đôi khi chúng ta cần kiểm tra cùng lúc nhiều mệnh đề trong cùng thời điểm.

Ví dụ: Khi chúng ta muốn kiểm tra chúng ta có trúng vé số hay không, chúng ta cần so sánh nhiều chữ số khác nhau. Nếu tờ vé số có 6 chữ số, chúng ta cần 6 lần so sánh. Điều kiện trúng giải là tất cả các cặp chữ số đều phải khớp với nhau.

Một trường hợp khác, chúng ta cần kiểm tra rằng có ít nhất một mệnh đề trong số các mệnh đề đưa ra là đúng hay không.

Ví dụ: Nếu chúng ta muốn nghỉ làm việc trong hôm nay, phải có ít nhất 1 trong 2 mệnh đề sau đây là đúng. Thứ nhất là "chúng ta bị ốm", thứ hai là "chúng ta đã hoàn thành công việc". Hoặc mệnh đề "chúng ta bị ốm" đúng, hoặc mệnh đề "chúng ta đã hoàn thành công việc" đúng thì chúng ta có thể nghỉ làm việc hôm nay. Nếu chỉ sử dụng các toán tử so sánh, chúng ta phải thực hiện so sánh 2 lần.

Ngôn ngữ C++ cung cấp cho chúng ta 3 toán tử logic: 

  • Toán tử NOT

Toán tử NOT kí hiệu là (!) là toán tử một ngôi có chức năng đảo ngược giá trị của biến kiểu bool. Khi sử dụng, chúng ta đặt toán tử NOT đứng trước giá trị kiểu bool hoặc biến kiểu bool.

Ví dụ:

bool b = false;
bool b1 = !b;

Nếu  toán tử NOT tác động đến giá trị True, nó sẽ chuyển giá trị thành False và ngược lại

  • Toán tử AND

Toán tử AND là một toán tử hai ngôi dùng để kiểm tra cả hai mệnh đề có đều đúng hay không

Ví dụ:

int value = 1;
value != 0 && value != 2; //true
value == 1 && value == 2; //false
  • Toán Tử OR

Toán tử OR là một toán tử hai ngôi dùng để kiểm tra một trong hai mệnh đề có đúng hay không. Ví dụ: "Tôi thích đá bóng" OR "Tôi thích học lập trình C++". Nếu mệnh đề "Tôi thích đá bóng" đúng, hoặc mệnh đề "Tôi thích học lập trình C++" đúng thì toán tử OR trả về kết quả đúng.

Ví dụ:

int value = 1;
value == 0 || value == 1; // true
value == 0 || value == 2; // false


3. Kích thước của kiểu dữ liệu bool 

So với các kiểu dữ liệu cơ bản khác thì kiểu dữ liệu bool có kích thước nhỏ nhất.

4. Ví dụ về kiểu dữ liệu bool trong C++ 

Việc sử dụng phổ biến nhất của kiểu dữ liệu bool là cho các câu lệnh có điều kiện. Chúng ta có thể so sánh các điều kiện với một boolean và cũng trả về chúng cho biết chúng đúng hay sai.

Dưới đây là chương trình C++ để minh họa kiểu dữ liệu bool: 

// Khai báo thư viện iostream
#include <iostream>
using namespace std;
int main()
{
int x1 = 10, x2 = 20, m = 2;
bool b1, b2;
    
// false
b1 = x1 == x2;
// true
b2 = x1 < x2;
cout << "Bool1 is = " <<
        b1 << "\n";
cout << "Bool2 is = " <<
        b2 << "\n";
bool b3 = true;
if (b3)
    cout << "Yes" << "\n";
else
    cout << "No" << "\n";
int x3 = false + 5 * m - b3;
cout << x3;
return 0;
}


Chúng ta có được đầu ra như sau:

Bool1 is = 0
Bool2 is = 1
Yes
9

 

Tổng kết

Như vậy chúng ta đã tìm hiểu và thực hành để làm quen với dữ liệu bool trong C++. Kiểu dữ liệu bool trong C++ là một công cụ quan trọng trong việc kiểm tra và quyết định luồng đi của chương trình. Bạn cần phải nắm thật chắc kiến thức này mới có thể lập trình tốt được C++  cũng như các ngôn ngữ lập trình khác. Chúc các bạn học tốt!


Stringee Communication APIs là giải pháp cung cấp các tính năng giao tiếp như gọi thoại, gọi video, tin nhắn chat, SMS hay tổng đài CSKH cho phép tích hợp trực tiếp vào ứng dụng/website của doanh nghiệp nhanh chóng. Nhờ đó giúp tiết kiệm đến 80% thời gian và chi phí cho doanh nghiệp bởi thông thường nếu tự phát triển các tính năng này có thể mất từ 1 - 3 năm.

Bộ API giao tiếp của Stringee hiện đang được tin dùng bởi các doanh nghiệp ở mọi quy mô, lĩnh vực ngành nghề như TPBank, VOVBacsi24, VNDirect, Shinhan Finance, Ahamove, Logivan, Homedy,  Adavigo, bTaskee…

Quý bạn đọc quan tâm xin mời đăng ký NHẬN TƯ VẤN TẠI ĐÂY: