Toán tử là gì và các loại của chúng trong lập trình C

Toan Tu La Gi Va Cac Loai Cua Chung Trong Lap Trinh C



Ngôn ngữ lập trình C có một loạt các toán tử cần thiết để thực hiện các loại hoạt động khác nhau trên các biến và hằng số. Toán tử trong C là các ký hiệu hoặc từ khóa đặc biệt nhận một hoặc nhiều toán hạng và thực hiện các phép toán số học, logic hoặc bitwise. Việc sử dụng các toán tử trong C giúp thực hiện các tính toán khác nhau và đánh giá logic trong một chương trình.

Trong hướng dẫn chi tiết này, chúng ta sẽ thảo luận về các toán tử trong lập trình C và các loại của chúng.

Toán tử và kiểu của chúng trong lập trình C

Toán tử là các ký hiệu, được sử dụng để thực hiện các nhiệm vụ toán học cụ thể. Chúng được sử dụng để thao tác dữ liệu và biến. Sau đây là các loại toán tử khác nhau trong lập trình C:







  1. toán tử số học
  2. toán tử đơn nguyên
  3. Toán tử gán
  4. Toán tử logic hoặc Boolean
  5. Toán tử quan hệ
  6. Toán tử có điều kiện
  7. toán tử Bitwise

1: Toán Tử Số Học

Đây là các toán tử được sử dụng để thực hiện các hàm toán học cơ bản như Cộng, Trừ hoặc Nhân. Bạn có thể sử dụng các toán tử này trên hầu hết các kiểu dữ liệu có sẵn của lập trình C. Sau đây là các toán tử số học được sử dụng trong lập trình C:



nhà điều hành Chức năng
+ Cộng 2 toán hạng
Trừ 2 toán hạng
* Nhân 2 toán hạng
/ Chia 2 toán hạng
% Toán tử mô đun đưa ra phần còn lại của phép chia

Ví dụ

Trong ví dụ dưới đây, chúng ta đã thực hiện các phép tính số học nêu trên trên biến X và biến Y. Biến X giữ giá trị 20 và Y giữ giá trị 5:



#include

int chủ yếu ( )

{

int X = hai mươi ;

int = 5 ;

int kết quả ;

kết quả = X + ;

bản inf ( 'Thêm X và Y là: %d \N ' , kết quả ) ;

kết quả = X - ;

bản inf ( 'Phép trừ của X và Y là: %d \N ' , kết quả ) ;

kết quả = X * ;

bản inf ( 'Phép nhân của X và Y là: %d \N ' , kết quả ) ;

kết quả = X / ;

bản inf ( 'Phép chia của X và Y là: %d \N ' , kết quả ) ;

kết quả = X % ;

bản inf ( 'Phân chia mô-đun của X và Y là: %d \N ' , kết quả ) ;

trở lại 0 ;

}





2: Toán tử đơn hạng

Có hai toán tử đơn nguyên duy nhất chỉ được ngôn ngữ C hỗ trợ, toán tử tăng ++ và giảm — toán tử. Toán tử tăng thêm 1 vào toán hạng và toán tử giảm trừ 1 khỏi toán hạng.

Toán tử gia số được viết là:



++ một hoặc một ++

Toán tử giảm dần là:

-- một hoặc một --

Nếu chúng ta sử dụng toán tử tăng và giảm làm tiền tố, trước tiên, nó sẽ cộng hoặc trừ giá trị biến và sau đó kết quả được gán cho biến ở bên trái. Nếu các toán tử được thêm vào trước, thì trước tiên nó trả về giá trị ban đầu và sau đó toán hạng được cộng hoặc trừ đi 1.

Ví dụ

Dưới đây chúng ta đã gán giá trị cho hai biến a và b và áp dụng các toán tử tăng giảm trên chúng:

#include

int chủ yếu ( )

{

int Một = mười lăm , b = 10 ;

bản inf ( '++a = %d \N ' , ++ Một ) ;

bản inf ( 'a++ = %d \N ' , Một ++ ) ;

trở lại 0 ;

}

3: Toán tử gán

MỘT toán tử gán (=) được sử dụng để gán giá trị cho biến trong chương trình. Dưới đây là các toán tử gán được đề cập:

nhà điều hành Chức năng
= Gán các giá trị cho toán hạng
+= Cộng giá trị của toán hạng hiện ở bên phải sang toán hạng bên trái
-= Trừ giá trị của toán hạng bên phải từ toán hạng bên trái
*= Nhân giá trị của toán hạng bên phải với toán hạng bên trái
/= Chia giá trị của toán hạng bên phải cho toán hạng bên trái
%= Lấy mô đun của hai giá trị và gán giá trị cho toán hạng bên trái

Ví dụ

Chúng ta đã chứng minh hoạt động của các toán tử gán trên hai toán hạng X và Y trong ví dụ dưới đây:

#include

int chủ yếu ( )

{

int X = 10 ;

int kết quả ;

kết quả = X ;

bản inf ( 'Giá trị của kết quả = %d \N ' , kết quả ) ;

kết quả += X ;

bản inf ( 'Giá trị của kết quả = %d \N ' , kết quả ) ;

kết quả -= X ;

bản inf ( 'Giá trị của kết quả = %d \N ' , kết quả ) ;

kết quả *= X ;

bản inf ( 'Giá trị của kết quả = %d \N ' , kết quả ) ;

kết quả /= X ;

bản inf ( 'Giá trị của kết quả = %d \N ' , kết quả ) ;

trở lại 0 ;

}

4: Toán tử quan hệ

Các toán tử quan hệ được sử dụng trong lập trình C để kiểm tra mối quan hệ giữa hai biến. Nó có thể được sử dụng để so sánh giá của các mặt hàng hoặc tuổi của hai người. Sau đây là các toán tử quan hệ được sử dụng trong lập trình C:

nhà điều hành Chức năng
== Tương đương với
> Lớn hơn
< Ít hơn
>= Lớn hơn bằng
<= Nhỏ hơn bằng
!= không bằng

Ví dụ

Ví dụ dưới đây cho thấy hoạt động của các toán tử quan hệ trong lập trình C:

#include

int chủ yếu ( )

{

int Một = 9 ;

int b = 10 ;

bản inf ( '%d == %d là %d \N ' , Một , b , Một == b ) ;

bản inf ( '%d > %d là %d \N ' , Một , b , Một > b ) ;

bản inf ( '%d < %d là %d \N ' , Một , b , Một < b ) ;

bản inf ( '%d!= %d là %d \N ' , Một , b , Một != b ) ;

bản inf ( '%d >= %d là %d \N ' , Một , b , Một >= b ) ;

bản inf ( '%d <= %d là %d \N ' , Một , b , Một <= b ) ;

trở lại 0 ;

}

5: Toán tử logic

Có bốn toán tử logic được ngôn ngữ C hỗ trợ:

nhà điều hành Chức năng
Logic VÀ (&&) Chỉ đúng nếu tất cả các điều kiện thỏa mãn
logic HOẶC (||) Nếu chỉ có một điều kiện thỏa mãn kết quả là đúng
Hợp lý KHÔNG (!) Nếu Toán hạng là 0 thì kết quả là đúng
Bitwise KHÔNG (~). Đảo ngược tất cả các bit của toán hạng

Ví dụ

Mã ví dụ dưới đây giải thích hoạt động của các toán tử logic trong C:

#include

int chủ yếu ( )

{

int X = 10 , = 4 , VỚI = 10 , kết quả ;

kết quả = ( X == ) && ( VỚI > ) ;

bản inf ( '(X == Y) && (Z > Y) là %d \N ' , kết quả ) ;

kết quả = ( X == ) && ( VỚI < ) ;

bản inf ( '(X == Y) && (Z < Y) là %d \N ' , kết quả ) ;

kết quả = ( X == ) || ( VỚI < ) ;

bản inf ( '(X == Y) || (Z < Y) là %d \N ' , kết quả ) ;

kết quả = ( X != ) || ( VỚI < ) ;

bản inf ( '(X != Y) || (Z < Y) là %d \N ' , kết quả ) ;

kết quả = ! ( X != ) ;

bản inf ( '!(X != Y) là %d \N ' , kết quả ) ;

kết quả = ! ( X == ) ;

bản inf ( '!(X == Y) là %d \N ' , kết quả ) ;

kết quả = ! ( X > ) ;

bản inf ( '!(X > Y) là %d \N ' , kết quả ) ;

trở lại 0 ;

}

6: Toán tử có điều kiện

Toán tử điều kiện trong C còn được gọi là toán tử bậc ba bởi vì nó nhận ba toán hạng – điều kiện, câu lệnh 1 và câu lệnh 2. Nó đánh giá điều kiện và trả về câu lệnh 1 hoặc câu lệnh 2, tùy thuộc vào kết quả của một điều kiện nhất định có thể đúng hoặc sai

Tình trạng ? Tuyên bố 1 : Tuyên bố 2
  • Tình trạng: Một biểu thức Boolean kiểm tra là đúng hay sai.
  • Tuyên bố 1: Một biểu thức được đánh giá nếu điều kiện là đúng.
  • Tuyên bố 2: Một biểu thức được đánh giá nếu điều kiện là sai.

Ví dụ

Trong ví dụ dưới đây, tôi đã gán giá trị cho số và sau đó áp dụng điều kiện, nếu điều kiện đúng thì câu lệnh 1 sẽ là đầu ra và nếu điều kiện sai thì câu lệnh 2 sẽ là đầu ra:

#include

int chủ yếu ( )

{

int con số = 10 ;

( con số < hai mươi ) ? ( bản inf ( 'Còn kém số 20!' ) ) : ( bản inf ( 'Nó lớn hơn số 20!' ) ) ;

trở lại 0 ;

}

7: Toán tử Bitwise

Toán tử bitwise trong C thao tác dữ liệu ở cấp độ bit, nghĩa là chúng hoạt động trên các bit riêng lẻ trong các loại dữ liệu như số nguyên. Chúng không thể được áp dụng cho double và float và được sử dụng để kiểm tra các bit và dịch chuyển chúng sang phải hoặc trái.

Toán tử bitwise trong lập trình C được đưa ra trong bảng dưới đây:

nhà điều hành Chức năng
& Bitwise AND
| Bitwise HOẶC
^ Bitwise độc ​​quyền HOẶC
<< Sang trái
>> Dịch sang phải
~ Bổ sung của một người

Ví dụ

Ví dụ sau đây cho thấy một chương trình C sử dụng toán tử bitwise:

#include

int chủ yếu ( ) {

int Một = 13 ; // nhị phân 1101

int b = 7 ; // nhị phân 0111

int kết quả ;



// Theo bit AND

kết quả = Một & b ; // 1101 & 0111 = 0101 (thập phân 5)

bản inf ( 'a & b = %u \N ' , kết quả ) ;

// Bitwise HOẶC

kết quả = Một | b ; // 1101 | 0111 = 1111 (thập phân 15)

bản inf ( 'a | b = %u \N ' , kết quả ) ;

// XOR từng bit

kết quả = Một ^ b ; // 1101^0111 = 1010 (thập phân 10)

bản inf ( 'a ^ b = %u \N ' , kết quả ) ;

// Dịch chuyển trái theo từng bit

kết quả = Một << 2 ; // 1101 << 2 = 110100 (thập phân 52)

bản inf ( 'a << 2 = %u \N ' , kết quả ) ;

// Dịch chuyển phải theo từng bit

kết quả = Một >> 2 ; // 1101 >> 2 = 0011 (thập phân 3)

bản inf ( 'a >> 2 = %u \N ' , kết quả ) ;

// Bitwise KHÔNG

kết quả = ~a ; // ~1101 = 0010 (biểu diễn phần bù thập phân 2 của -14)

bản inf ( '~a = %d \N ' , kết quả ) ;



trở lại 0 ;

}

Ghi chú: Các toán tử bitwise được sử dụng để thực hiện các tác vụ ở cấp độ bit, nghĩa là chúng hoạt động trên các bit riêng lẻ trong một số nhị phân. Mặt khác, các toán tử Boolean được sử dụng để thực hiện các thao tác trên các giá trị logic. Chúng hoạt động trên các giá trị Boolean (true/false hoặc 1/0) và thường được sử dụng trong các quy trình ra quyết định hoặc các câu lệnh có điều kiện.

dòng dưới cùng

Toán tử là một ký hiệu hướng dẫn trình biên dịch thực hiện các chức năng nhất định. Ngôn ngữ C có một số toán tử tích hợp sẵn bao gồm số học, đơn hạng, phép gán, logic, quan hệ, điều kiện, Boolean và bitwise. Chúng tôi đã thảo luận chi tiết về chúng và chứng minh chúng bằng đầu ra ví dụ. Đọc phần trên của hướng dẫn để biết thông tin chi tiết về các toán tử này.