Video: [Lập trình C/C++] Bài 5_3. Hàm(Phần 3) - Cú pháp - Nguyên lí hoạt động của hàm 2025
Tất cả các toán tử thực hiện một số chức năng được xác định trong C + +. Ngoài ra, mỗi toán tử có ưu tiên - một trật tự nhất định trong đó các biểu thức được đánh giá. Xem xét, ví dụ, làm thế nào ưu tiên ảnh hưởng đến giải quyết vấn đề sau:
int var = 2 * 3 + 1;
Nếu bổ sung được thực hiện trước khi nhân, giá trị của biểu thức là 2 lần 4, hoặc 8. Nếu nhân được thực hiện đầu tiên, giá trị là 6 cộng với 1, hoặc 7.
Sự ưu tiên của các toán tử quyết định ai sẽ đi trước. Khái niệm ưu tiên cũng có mặt trong số học. C ++ tuân thủ sự ưu tiên số học chung. Do đó phép nhân có độ ưu tiên cao hơn so với phép cộng, vì vậy kết quả là 7.
Vậy điều gì sẽ xảy ra khi hai toán tử có cùng thứ tự xuất hiện trong cùng một biểu thức? Ví dụ:
int var = 8/4/2;
Khi toán tử có cùng thứ tự xuất hiện trong cùng một biểu thức, chúng được đánh giá từ trái sang phải (cùng một quy tắc được áp dụng trong số học). Như vậy, trong đoạn mã này, var bằng 8 chia cho 4 (là 2) chia cho 2 (là 1).
x / 100 + 32chia x thành 100 trước khi thêm vào 32. Nhưng nếu lập trình viên muốn chia x bằng 100 cộng 32 thì sao? Lập trình viên có thể thay đổi thứ tự ưu tiên bằng cách kết hợp các biểu thức với nhau trong dấu ngoặc đơn (các lớp đại số!), Như sau:
x / (100 + 32)
Biểu thức này có cùng hiệu quả như chia x bằng 132. Biểu thức ban đầu
x / 100 + 32
giống hệt với biểu thức