C++ – Operators
Assignment
// assignment operator #include <iostream> using namespace std; int main () { int a, b; // a:?, b:? a = 10; // a:10, b:? b = 4; // a:10, b:4 a = b; // a:4, b:4 b = 7; // a:4, b:7 cout << "a:"; cout << a; cout << " b:"; cout << b; }
Arithmetic operators
... y = 2 + (x = 5); ... x = 5; y = 2 + x; ... x = y = z = 5; ...
On C++ you can use:
+ addition
– subtraction
* multiplication
/ division
% modulo
Compound assignment
// compound assignment operators #include <iostream> using namespace std; int main () { int a, b=3; a = b; a+=2; // equivalent to a=a+2 cout << a; }
Increment and decrement
... ++x; x+=1; x=x+1; ...
Relational and comparison operators
... (7 == 5) // evaluates to false (5 > 4) // evaluates to true (3 != 2) // evaluates to true (6 >= 6) // evaluates to true (5 < 5) // evaluates to false ... (a == 5) // evaluates to false, since a is not equal to 5 (a*b >= c) // evaluates to true, since (2*3 >= 6) is true (b+4 > a*c) // evaluates to false, since (3+4 > 2*6) is false ((b=2) == a) // evaluates to true ...
Logical operators
... !(5 == 5) // evaluates to false because the expression at its right (5 == 5) is true !(6 <= 4) // evaluates to true because (6 <= 4) would be false !true // evaluates to false !false // evaluates to true ... ( (5 == 5) && (3 > 6) ) // evaluates to false ( true && false ) ( (5 == 5) || (3 > 6) ) // evaluates to true ( true || false ) ...
Conditional ternary operator
... 7==5 ? 4 : 3 // evaluates to 3, since 7 is not equal to 5. 7==5+2 ? 4 : 3 // evaluates to 4, since 7 is equal to 5+2. 5>3 ? a : b // evaluates to the value of a, since 5 is greater than 3. a>b ? a : b // evaluates to whichever is greater, a or b. ...
Reference: http://www.cplusplus.com/doc/tutorial/operators/