Mức độ ưu tiên của toán tử xác định nhóm các thuật ngữ trong một biểu thức. Tính liên kết của một toán tử là một thuộc tính xác định cách các toán tử có cùng mức độ ưu tiên được nhóm lại mà không có dấu ngoặc đơn. Điều này ảnh hưởng đến cách một biểu thức được đánh giá. Một số toán tử nhất định có quyền ưu tiên cao hơn những toán tử khác; ví dụ:toán tử nhân có mức độ ưu tiên cao hơn toán tử cộng:
Ví dụ:x =7 + 3 * 2; ở đây, x được gán 13, không phải 20 vì toán tử * có mức độ ưu tiên cao hơn +, do đó, đầu tiên nó được nhân với 3 * 2 và sau đó cộng thành 7.
Ở đây, các toán tử có mức độ ưu tiên cao nhất xuất hiện ở đầu bảng, những toán tử có mức độ ưu tiên thấp nhất xuất hiện ở cuối bảng. Trong một biểu thức, các toán tử có mức độ ưu tiên cao hơn sẽ được đánh giá đầu tiên.
Danh mục | Toán tử | Tính liên kết |
---|---|---|
Postfix | () [] ->. ++ - - | Trái sang phải |
Unary | + -! ~ ++ - - (type) * &sizeof | Từ phải sang trái |
Phép nhân | * /% | Trái sang phải |
Phụ gia | + - | Trái sang phải |
Shift | <<>> | Trái sang phải |
Quan hệ | <<=>> = | Trái sang phải |
Bình đẳng | ==! = | Trái sang phải |
Bitwise AND | & | Trái sang phải |
Bitwise XOR | ^ | Trái sang phải |
Theo chiều dọc bit HOẶC | | | Trái sang phải |
Logic AND | && | Trái sang phải |
Hợp lý HOẶC | || | Trái sang phải |
Có điều kiện | ?: | Từ phải sang trái |
Bài tập | =+ =- =* =/ =% =>> =<<=&=^ =| = | Từ phải sang trái |
Dấu phẩy | , | Trái sang phải |