Toán tử 3 ngôi trong lập trình C++
Toán tử 3 ngôi còn được hiểu là cách viết tắt của if else. Sở dĩ có tên như vậy là vì chúng gồm 3 toán hạng.
Chúng ta có thể dùng công cụ này để thay thế nhiều dòng lệnh trong C++ thành một dòng duy nhất, thay thế cho các câu lệnh điều kiện if else đơn giản.
Toán tử 3 ngôi là gì?
Hình minh họa:
Cú pháp sử dụng:
Biến = (điều kiện if else) ? biểu thức đúng (Value 1) : biểu thức sai (Value 2);
Nếu điều kiện if else đúng, thì chương trình sẽ lấy Value 1làm giá trị cho toàn bộ biểu thức. Ngược lại, nếu điều kiện sai thì chương trình sẽ trả về Value.
Code mẫu minh họa
Ví dụ 1: mình dùng một đoạn code mẫu sau:
int tuoi = 80; string result = (Age < 65) ? "Độ tuổi còn đang cày" : "Đang nghỉ hưu"; cout << result;// In ra kết quả là Đang nghỉ hưu
Như bạn thấy, vì điều kiện sai (65 không thể nhỏ hơn 80 được) => Chương trình sẽ lấy giá trị thứ 2 là “Đang nghỉ hưu” và in kết quả đó ra màn hình.
Ví dụ 2: Tìm ra số lớn nhất giữa 2 số:
int a = 34, b = 75; int max = (a > b) ? a : b; cout << max; // In ra max là b = 75
Vì sao toán tử 3 ngôi giúp rút gọn code?
Trước khi dùng toán tử, khi lập trình với if else thì chúng ta sẽ có đoạn code dài ngoằng như bên dưới:
int Age = 80; int result; if (Age > 65) { result = Đang nghỉ hưu; } else { result = Độ tuổi còn đang cày; }
Tuy nhiên, với toán tử thì chúng ta chỉ còn 2 dòng ngắn gọn như bên dưới:
int Age = 80; int result = Age > 65 ? "Độ tuổi còn đang cày" : "Đang nghỉ hưu";
Bạn có thể thấy, code đã được rút gọn đáng kể phải không nào! Đừng bỏ lỡ các kiến thức về lập trình C khác trên Blog của IoTZone nhé!
IoTZone – Chuyên cung cấp thiết bị điện tử & tài liệu cho Makers
- Website: https://www.iotzone.vn/
- Fanpage: https://www.facebook.com/Iotzonemaker
- SDT: 0364174499
- Zalo: https://zalo.me/0364174499