在这里,我们将了解C / C ++中的一元运算符。一元运算符是作用于单个操作数以产生新值的运算符。一元运算符如下。
| 运算符 | 描述 |
|---|---|
| 间接运算符(*) | 它对指针变量进行操作,并返回一个等于指针地址值的l值。这称为“取消引用”指针。 |
| 运算符地址(&) | 一元地址运算符(&)采用其操作数的地址。address-of运算符的操作数可以是函数指定符,也可以是指定对象的l值,该对象不是位字段,并且没有用寄存器存储类说明符声明。 |
| 一元加号运算符(+) | 一元加运算符(+)的结果是其操作数的值。一元加号运算符的操作数必须是算术类型。 |
| 一元求反运算符(-) | -(一元减)运算符使操作数的值取反。操作数可以具有任何算术类型。结果不是左值。 |
| 逻辑否定运算符(!) | 逻辑否定运算符(!)反转其操作数的含义。操作数必须是算术或指针类型(或计算结果为算术或指针类型的表达式)。操作数被隐式转换为bool类型。 |
| 一个补码运算符(〜) | 一个人的补码运算符有时称为“按位补码”或“按位NOT”运算符,产生其操作数的按位补码。操作数必须是整数类型。 |
| 前缀增量运算符(++) | 前缀增量运算符(++)在其操作数上加一个;该增加的值是表达式的结果。操作数必须是非const类型的l值。结果是与操作数相同类型的l值。 |
| 前缀减量运算符(-) | 前缀减量运算符(-)从其操作数中减去1;该减少的值是表达式的结果。操作数必须是非const类型的l值。结果是与操作数相同类型的l值。 |
| 演员() | 类型转换提供了一种在特定情况下显式转换对象类型的方法。进行类型转换后,编译器将cast-expression视为类型type-name。 |
| 大小运算符 | 它是一个编译时一元运算符,可用于计算其操作数的大小。 |
| 新运算符 | 它是用于动态分配内存的内存分配运算符。 |
| 删除运算符 | 它是一个内存分配运算符,用于取消分配动态分配的内存。 |
这些运算符具有从右到左的关联性。一元表达式通常涉及后缀或主表达式之前的语法
让我们看一下-(minus)和casting()一元运算符的示例。
#include<iostream>
using namespace std;
int main() {
int x;
float y = 1.23;
x = (int) y;
x = -x;
cout << x;
return 0;
}-1