Objective-C 中的赋值运算符
Objective-C 语言支持的赋值运算符如下 −
运算符 | 描述 | 示例 |
---|---|---|
= | 简单赋值运算符,将右侧操作数的值分配给左侧操作数 | C = A + B 会将 A + B 的值赋给 C |
+= | 添加AND赋值运算符,将右操作数与左操作数相加,并将结果赋值给左操作数 | C += A 等价于 C = C + A |
-= | 减与赋值运算符,左操作数减去右操作数,结果赋给左操作数 | C -= A 等同于 C = C - A |
*= | 乘与赋值运算符,将右操作数与左操作数相乘,并将结果赋给左操作数 | C *= A 等同于 C = C * A |
/= | 除与赋值运算符,将左操作数与右操作数相除,并将结果赋给左操作数 | C /= A 等同于 C = C / A |
%= | 模数与赋值运算符,它使用两个操作数取模并将结果分配给左操作数 | C %= A 等同于 C = C % A |
<<= | 左移与赋值运算符 | C <<= 2 等同于 C = C << 2 |
>>= | 右移与赋值运算符 | C >>= 2 等同于 C = C >> 2 |
&= | 按位与赋值运算符 | C &= 2 等同于 C = C & 2 |
^= | 按位异或和赋值运算符 | C ^= 2 等同于 C = C ^ 2 |
|= | 按位包含或和赋值运算符 | C |= 2 等同于 C = C | 2个 |
示例
尝试以下示例来理解 Objective-C 编程语言中可用的所有赋值运算符 −
#import <Foundation/Foundation.h> int main() { int a = 21; int c ; c = a; NSLog(@"Line 1 - = Operator Example, Value of c = %d\n", c ); c += a; NSLog(@"Line 2 - += Operator Example, Value of c = %d\n", c ); c -= a; NSLog(@"Line 3 - -= Operator Example, Value of c = %d\n", c ); c *= a; NSLog(@"Line 4 - *= Operator Example, Value of c = %d\n", c ); c /= a; NSLog(@"Line 5 - /= Operator Example, Value of c = %d\n", c ); c = 200; c %= a; NSLog(@"Line 6 - %= Operator Example, Value of c = %d\n", c ); c <<= 2; NSLog(@"Line 7 - <<= Operator Example, Value of c = %d\n", c ); c >>= 2; NSLog(@"Line 8 - >>= Operator Example, Value of c = %d\n", c ); c &= 2; NSLog(@"Line 9 - &= Operator Example, Value of c = %d\n", c ); c ^= 2; NSLog(@"Line 10 - ^= Operator Example, Value of c = %d\n", c ); c |= 2; NSLog(@"Line 11 - |= Operator Example, Value of c = %d\n", c ); }
当你编译并执行上面的程序时,它会产生以下结果 −
2013-09-07 22:00:19.263 demo[21858] Line 1 - = Operator Example, Value of c = 21 2013-09-07 22:00:19.263 demo[21858] Line 2 - += Operator Example, Value of c = 42 2013-09-07 22:00:19.263 demo[21858] Line 3 - -= Operator Example, Value of c = 21 2013-09-07 22:00:19.263 demo[21858] Line 4 - *= Operator Example, Value of c = 441 2013-09-07 22:00:19.263 demo[21858] Line 5 - /= Operator Example, Value of c = 21 2013-09-07 22:00:19.264 demo[21858] Line 6 - %= Operator Example, Value of c = 11 2013-09-07 22:00:19.264 demo[21858] Line 7 - <<= Operator Example, Value of c = 44 2013-09-07 22:00:19.264 demo[21858] Line 8 - >>= Operator Example, Value of c = 11 2013-09-07 22:00:19.264 demo[21858] Line 9 - &= Operator Example, Value of c = 2 2013-09-07 22:00:19.264 demo[21858] Line 10 - ^= Operator Example, Value of c = 0 2013-09-07 22:00:19.264 demo[21858] Line 11 - |= Operator Example, Value of c = 2