Computer >> Máy Tính >  >> Lập trình >> C ++

Toán tử đơn nguyên trong C ++


Toán tử một ngôi là các toán tử hoạt động dựa trên một toán hạng duy nhất để tạo ra một giá trị mới. Các toán tử một ngôi như sau -

  • Toán tử chuyển hướng (* ) - Nó hoạt động trên một biến con trỏ và trả về giá trị l tương đương với giá trị tại địa chỉ con trỏ. Đây được gọi là con trỏ "truyền tham chiếu".
  • Địa chỉ của nhà điều hành (&) - Toán tử địa chỉ một ngôi (&) lấy địa chỉ của toán hạng của nó. Toán hạng của toán tử address-of có thể là bộ chỉ định hàm hoặc giá trị l chỉ định một đối tượng không phải là trường bit và không được khai báo với bộ chỉ định lớp lưu trữ thanh ghi.
  • Toán tử cộng một bậc (+) - Kết quả của toán tử cộng một bậc (+) là giá trị của toán hạng của nó. Toán hạng của toán tử cộng một bậc phải thuộc loại số học.
  • Toán tử phủ định riêng (-) - Toán tử - (một ngôi trừ) phủ định giá trị của toán hạng. Toán hạng có thể có bất kỳ kiểu số học nào. Kết quả không phải là giá trị.
  • Toán tử phủ định logic (!) - Toán tử phủ định logic (!) Đảo ngược ý nghĩa của toán hạng của nó. Toán hạng phải thuộc kiểu số học hoặc kiểu con trỏ (hoặc một biểu thức được đánh giá là kiểu số học hoặc kiểu con trỏ). Toán hạng được chuyển đổi hoàn toàn thành kiểu bool.
  • Toán tử bổ sung của một (~) - Toán tử bổ sung của một người, đôi khi được gọi là toán tử "bổ sung theo bit" hoặc "không theo bit", tạo ra phần bổ sung bitwise của toán hạng của nó. Toán hạng phải thuộc loại tích phân.
  • Toán tử tăng tiền tố (++) - Toán tử tăng tiền tố (++) thêm một vào toán hạng của nó; giá trị gia tăng này là kết quả của biểu thức. Toán hạng phải là một giá trị l không thuộc kiểu const. Kết quả là giá trị l cùng kiểu với toán hạng.
  • Toán tử giảm tiền tố (-) - Toán tử giảm dần tiền tố (-) trừ một từ toán hạng của nó; giá trị giảm dần này là kết quả của biểu thức. Toán hạng phải là một giá trị l không thuộc kiểu const. Kết quả là giá trị l cùng kiểu với toán hạng.
  • Toán tử truyền () - Kiểu ép kiểu cung cấp một phương thức để chuyển đổi kiểu của đối tượng một cách rõ ràng trong một tình huống cụ thể. Trình biên dịch coi biểu thức ép kiểu là kiểu-tên kiểu sau khi thực hiện ép kiểu.
  • toán tử sizeof - Đây là một toán tử đơn vị thời gian biên dịch có thể được sử dụng để tính toán kích thước của toán hạng của nó.
  • toán tử mới - Nó là một toán tử cấp phát bộ nhớ được sử dụng để cấp phát bộ nhớ động.
  • xóa toán tử - Nó là một toán tử cấp phát bộ nhớ được sử dụng để phân bổ bộ nhớ đã được cấp phát động.

Các toán tử này có phép kết hợp từ phải sang trái. Biểu thức đơn nguyên thường liên quan đến cú pháp đứng trước hậu tố hoặc biểu thức chính.

Ví dụ

Hãy xem một ví dụ về các toán tử - (trừ) và ép kiểu () một ngôi.

#include<iostream>
using namespace std;
int main() {
   int x;
   float y = 1.23;

   x = (int) y;
   x = -x;

   cout << x;
   return 0;
}

Đầu ra

Điều này cho kết quả -

-1