Một toán tử là một biểu tượng, mà nói cho lập trình viên thực hiện các thao tác toán học và logic cụ thể. C++ cung cấp nhiều toán tử có sẵn, đó là:

Toán tử số học

sửa
Toán tử Miêu tả
+ Cộng hai toán hạng
- Trừ toán hạng thứ hai từ toán hạng đầu
* Nhân hai toán hạng
/ Phép chia lấy nguyên
% Phép lấy số dư
++ Toán tử tăng (++), tăng giá trị toán hạng thêm một đơn vị
-- Toán tử giảm (--), giảm giá trị toán hạng đi một đơn vị

Toán tử quan hệ

sửa
Toán tử Miêu tả
== Kiểm tra nếu 2 toán hạng bằng nhau hay không. Nếu bằng thì là true.
!= Kiểm tra 2 toán hạng có giá trị khác nhau hay không. Nếu không bằng thì là true.
> Kiểm tra nếu toán hạng bên trái có giá trị lớn hơn toán hạng bên phải hay không. Nếu lớn hơn thì điều kiện là true.
< Kiểm tra nếu toán hạng bên trái nhỏ hơn toán hạng bên phải hay không. Nếu nhỏ hơn thì là true.
>= Kiểm tra nếu toán hạng bên trái có giá trị lớn hơn hoặc bằng giá trị của toán hạng bên phải hay không. Nếu đúng là true.
<= Kiểm tra nếu toán hạng bên trái có giá trị nhỏ hơn hoặc bằng toán hạng bên phải hay không. Nếu đúng là true.

Toán tử logic

sửa
Toán tử Miêu tả
&& Được gọi là toán tử logic AND (và). Nếu cả hai toán tử đều có giá trị khác 0 thì điều kiện trở lên true.
|| Được gọi là toán tử logic OR (hoặc). Nếu một trong hai toán tử khác 0, thì điều kiện là true.
! Được gọi là toán tử NOT (phủ định). Sử dụng để đảo ngược lại trạng thái logic của toán hạng đó. Nếu điều kiện toán hạng là true thì phủ định nó sẽ là false.

Toán tử so sánh bit

sửa
Toán tử Miêu tả
& Toán tử AND (và) nhị phân sao chép một bit tới kết quả nếu nó tồn tại trong cả hai toán hạng.
| Toán tử OR (hoặc) nhị phân sao chép một bit tới kết quả nếu nó tồn tại trong một hoặc hai toán hạng.
^ Toán tử XOR nhị phân sao chép bit mà nó chỉ tồn tại trong một toán hạng mà không phải cả hai.
~ Toán tử đảo bit (đảo bit 1 thành bit 0 và ngược lại).
<< Toán tử dịch trái. Giá trị toán hạng trái được dịch chuyển sang trái bởi số các bit được xác định bởi toán hạng bên phải.
>> Toán tử dịch phải. Giá trị toán hạng trái được dịch chuyển sang phải bởi số các bit được xác định bởi toán hạng bên phải.
p
q
p & q p | q p ^ q
0
0
0
0
0
0
1
0
1
1
1
1
1
1
0
1
0
0
1
1

Giả sử nếu A = 60; và B = 13; thì bây giờ trong định dạng nhị phân chúng sẽ là như sau:

A = 0011 1100

B = 0000 1101

A&B = 0000 1100

A|B = 0011 1101

A^B = 0011 0001

~A  = 1100 0011

Toán tử gán

sửa
Toán tử Miêu tả
= Toán tử gán đơn giản. Gán giá trị toán hạng bên phải cho toán hạng trái.
+= Thêm giá trị toán hạng phải tới toán hạng trái và gán giá trị đó cho toán hạng trái.
-= Trừ đi giá trị toán hạng phải từ toán hạng trái và gán giá trị này cho toán hạng trái.
*= Nhân giá trị toán hạng phải với toán hạng trái và gán giá trị này cho toán hạng trái.
/= Chia toán hạng trái cho toán hạng phải và gán giá trị này cho toán hạng trái.
%= Lấy phần dư của phép chia toán hạng trái cho toán hạng phải và gán cho toán hạng trái.
<<= Dịch trái toán hạng trái sang số vị trí là giá trị toán hạng phải.
>>= Dịch phải toán hạng trái sang số vị trí là giá trị toán hạng phải.
&= Phép AND bit
^= Phép OR loại trừ bit
|= Phép OR bit.

Các toán tử hỗn hợp

sửa
Toán tử Miêu tả
sizeof Toán tử sizeof trong C++ trả về kích cỡ của một biến. Ví dụ: sizeof(a), với a là integer, sẽ trả về 4
Điều kiện ? X : Y Toán tử điều kiện trong C++. Nếu Condition là true ? thì nó trả về giá trị X : nếu không thì trả về Y
, Toán tử Comma trong C++ làm cho một dãy hoạt động được thực hiện. Giá trị của toàn biểu thức comma là giá trị của biểu thức cuối cùng trong danh sách được phân biệt bởi dấu phảy
. (dot) và -> (arrow) Toán tử thành viên trong C++ được sử dụng để tham chiếu các phần tử đơn của các lớp, các cấu trúc, và union
Cast Toán tử ép kiểu (Casting) trong C++ biến đổi một kiểu dữ liệu thành kiểu khác. Ví dụ: int(2.2000) sẽ trả về 2
& Toán tử con trỏ & trong C++ trả về địa chỉ của một biến. Ví du: &a; sẽ trả về địa chỉ thực sự của biến này
* Toán tử con trỏ * trong C++ là trỏ tới một biến. Ví dụ: *var sẽ trỏ tới một biến var