[C Programming] Độ ưu Tiên Của Toán Tử (Precedence) - Code Lean

Bài đăng nổi bật

Kill Port 8080

21:33 Trang chủc [C Programming] Độ ưu tiên của toán tử (Precedence) 23:22 0 Nhận xét Độ ưu tiên của toán tử thiết lập thứ tự ưu tiên tính toán khi một biểu thức số học cần được ước lượng. Tóm lại, độ ưu tiên đề cập đến thứ tự mà C thực thi các toán tử. Thứ tự ưu tiên của toán tử số học được thể hiện như bảng dưới đây.
Loại toán tử Toán tử Tính kết hợp
Một ngôi - , ++, -- Phải sang trái
Hai ngôi ^ Trái sang phải
*, /, %
+, -
= Phải sang trái
Bảng 4.4: Thứ tự ưu tiên của toán tử số học Những toán tử nằm cùng một hàng ở bảng trên có cùng quyền ưu tiên. Việc tính toán của một biểu thức số học sẽ được thực hiện từ trái sang phải cho các toántử cùng độ ưu tiên. Toán tử *, /, và % có cùng đô ưu tiên và cao hơn + và - (hai ngôi). Độ ưu tiên của những toán tử này có thể được thay đổi bằng cách sử dụng dấu ngoặc đơn. Một biểu thức trong ngoặc luôn luôn được tính toán trước. Một cặp dấu ngoặc đơn này có thể được bao trong cặp khác. Ðây là sự lồng nhau của những dấu ngoặc đơn. Trong trường hợp đó, việc tính toán trước tiên được thực hiện tại cặp dấu ngoặc đơn trong cùng nhất rồi đến dấu ngoặc đơn bên ngoài. Nếu có nhiều bộ dấu ngoặc đơnthì việc thực thi sẽ theo thứ tự từ trái sang phải. Tính kết hợp cho biết cách thức các toán tử kết hợp với các toán hạng của chúng. Ví dụ, đối với toán tử một ngôi: toán hạng nằm bên phải được tính trước, trong phép chia thì toán hạng bên trái được chia cho toán hạng bên phải. Đối với toán tử gán thì biểu thức bên phải được tính trước rồi gán giá trị cho biến bên trái toán tử. Tính kết hợp cũng cho biết thứ tự mà theo đó C đánh giá các toán tử trong biểu thức có cùng độ ưu tiên. Các toán tử như vậy có thể tính toán từ trái sang phải hoặc ngược lại như thấy trong bảng 4.5. Ví dụ: a = b = 10/2; Giá trị 5 sẽ gán cho b xong rồi gán cho a. Vì vậy thứ tự ưu tiên sẽ là phải sang trái. Hơn nữa, -8 * 4 % 2 – 3 được tính theo trình tự sau: Trình tựThao tácKết quả 1.- 8 (phép trừ một ngôi)số âm của 8 2.- 8 * 4- 32 3.- 32 % 2 0 4. 0-3 -3 Theo trên thì toán tự một ngôi (dấu - ) có quyền ưu tiên cao nhất được tính trước tiên. Giữa * và % thì được tính từ trái sang phải. Tiếp đến sẽ là phép trừ hai ngôi. Thứ tự ưu tiên giữa những toán tử so sánh (toán tử quan hệ) Ta đã thấy trong phần trước một số toán tử số học có độ ưu tiên cao hơn các toán tử số học khác. Riêng với toán tử so sánh, không có thứ tự ưu tiên giữa các toán tử và chúng được ước lượng từ trái sang phải. Thứ tự ưu tiên giữa những toán tử luận lý Bảng dưới đây trình bày thứ tự ưu tiên cho toán tử luận lý.
Thứ tự Toán tử
1 NOT
2 AND
3 OR
Bảng 4.5: Thứ tự ưu tiên cho toán tử luận lý Khi có nhiều toán tử luận lý trong một điều kiện, chúng được lượng giá từ phải sang trái. Ví dụ, xét điều kiện sau: False OR True AND NOT False AND True Ðiều kiện này được tính như sau: 1. False OR True AND [NOT False] AND TrueNOT có độ ưu tiên cao nhất. 2. False OR True AND [True AND True]Ở đây, AND là toán tử có độ ưu tiên cao nhất và những toán tử có cùng ưu tiên được tính từ phải sang trái. 3. False OR [True AND True] 4. [False OR True] 5. True Thứ tự ưu tiên giữa các kiểu toán tử khác nhau Khi một biểu thức có nhiều hơn một kiểu toán tử thì thứ tự ưu tiênphải được thiết lập giữa các kiểu toán tử với nhau. Bảng dưới đây cho biết thứ tự ưu tiêngiữa các kiểu toán tử khác nhau.
Thứ tự Kiểu toán tử
1 Số học
2 So sánh (Quan hệ)
3 Luận lý
Bảng 4.6. Thứ tự ưu tiên giữa các kiểu toán tử khác nhau Do vậy, trong một biểu thức gồm cả ba kiểu toán tử, các toán tử số học được tính trước, kế đến là toán tử so sánh và sau đó là toán tử luận lý. Thứ tự ưu tiên của các toán tử trong cùng một kiểu thì đã được nói tới ở những phần trước. Dấu ngoặc đơn Thứ tự ưu tiên của các toán tử có thể thay đổi bởi các dấu ngoặc đơn. Khi đó, chương trình sẽ tính toán các phần dữ liệu trong dấu ngoặc đơn trước. Khi một cặp dấu ngoặc đơn này được bao trong cặp khác, việc tính toán thực hiện trước tiên tại cặp dấu ngoặc đơn trong cùng nhất, rồi đến dấu ngoặc đơn bên ngoài. Nếu có nhiều bộ dấu ngoặc đơn thì việc thực hiện sẽ theo thứ tự từ trái sang phải. Tags c Programming

You might like

Hiện thêm

Post a Comment

Đăng nhận xét

Mới hơn Cũ hơn

Follow Us

Chủ Đề Tôi Quan Tâm ;)

  • .Net
  • .net core
  • Agile
  • AI
  • AngularJS
  • Anroid
  • AP
  • Azure
  • BDW
  • Bootstrap
  • c
  • C#
  • Cấu Trúc Dữ Liệu và Giải Thuật
  • CodeLean
  • CSDL
  • CSS
  • Database
  • Design Pattern
  • DesignThinking
  • DevOps
  • Docker
  • Git
  • github
  • HTML
  • Index
  • ISA
  • Java
  • Java1
  • Java2
  • JavaAdvanced
  • JavaCore
  • JavaScript
  • JSP & Servlet
  • Laravel Framework
  • Laravel9
  • Lập trình C
  • LINQ
  • MLJ
  • MySQL
  • NodeJS
  • OOAD
  • PHP
  • Programming
  • Python
  • QA
  • React Native
  • Spring Boot
  • Spring Framework
  • SQL
  • Teaching
  • Test
  • Thiết Kế Website
  • Tools
  • TypeScript
  • Web Development
  • WebAPI

Most Popular

Chuẩn hoá dữ liệu là gì? 1NF, 2NF, 3NF & BCNF với các ví dụ

11:57

[MySQL 05] Mô hình ER là gì và ví dụ

12:08

Tìm Phủ Tối thiểu của một Hàm

12:29

Xác định khóa, Tìm phủ tối thiểu, Chuẩn hóa dữ liệu

16:36

Big O: Cách tính độ phức tạp của thời gian và không gian

16:37

Bắt đầu học Node.js với Visual Studio Code

10:07

[Web API] Hướng dẫn từ cơ bản tới nâng cao Web API ASP.NET

19:21

[MySQL 02] Hướng dẫn sử dụng MySQL Workbench

11:32

Hướng dẫn sửa cấu hình để chạy Dự Án Laravel từ Source Code có sẵn

14:59

[JSP & Servlet] Tạo Web Application JSP Servlet Sử dụng JSTL với Tomcat 10 trên IntelliJ

21:27

Biểu mẫu liên hệ

Từ khóa » Thứ Tự ưu Tiên Phép Toán Trong C