发布于 2015-07-05 11:53:46 | 179 次阅读 | 评论: 0 | 来源: 网络整理
支持Objective-C语言的赋值运算符有以下:
运算符 | 描述说明 | 示例 |
---|---|---|
= | Simple assignment operator, Assigns values from right side operands to left side operand | C = A + B will assign value of A + B into C |
+= | Add AND assignment operator, It adds right operand to the left operand and assigns the result to left operand | C += A 等同于 C = C + A |
-= | Subtract AND assignment operator, It subtracts right operand from the left operand and assigns the result to left operand | C -= A 等同于 C = C - A |
*= | Multiply AND assignment operator, It multiplies right operand with the left operand and assigns the result to left operand | C *= A 等同于 C = C * A |
/= | Divide AND assignment operator, It divides left operand with the right operand and assigns the result to left operand | C /= A 等同于 C = C / A |
%= | Modulus AND assignment operator, It takes modulus using two operands and assigns the result to left operand | C %= 等同于 C = C % A |
<<= | Left shift AND assignment operator | C <<= 2 等同于 C = C << 2 |
>>= | Right shift AND assignment operator | C >>= 2 等同于 C = C >> 2 |
&= | Bitwise AND assignment operator | C &= 2 等同于C = C & 2 |
^= | bitwise exclusive OR and assignment operator | C ^= 2 等同于C = C ^ 2 |
|= | bitwise inclusive OR and assignment operator | C |= 2 等同于 C = C | 2 |
尝试下面的例子就明白了所有在Objective-C编程语言的赋值运算符:
#import <Foundation/Foundation.h>
main()
{
int a = 21;
int c ;
c = a;
NSLog(@"Line 1 - = Operator Example, Value of c = %dn", c );
c += a;
NSLog(@"Line 2 - += Operator Example, Value of c = %dn", c );
c -= a;
NSLog(@"Line 3 - -= Operator Example, Value of c = %dn", c );
c *= a;
NSLog(@"Line 4 - *= Operator Example, Value of c = %dn", c );
c /= a;
NSLog(@"Line 5 - /= Operator Example, Value of c = %dn", c );
c = 200;
c %= a;
NSLog(@"Line 6 - %= Operator Example, Value of c = %dn", c );
c <<= 2;
NSLog(@"Line 7 - <<= Operator Example, Value of c = %dn", c );
c >>= 2;
NSLog(@"Line 8 - >>= Operator Example, Value of c = %dn", c );
c &= 2;
NSLog(@"Line 9 - &= Operator Example, Value of c = %dn", c );
c ^= 2;
NSLog(@"Line 10 - ^= Operator Example, Value of c = %dn", c );
c |= 2;
NSLog(@"Line 11 - |= Operator Example, Value of c = %dn", 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