Arithmetic operators
| + | Plus | |
| - | Minus | can be used in 'unary' format, e.g., '-x' |
| * | Multiply | |
| / | Divide | |
| % | Modulus | 'x % y' is the remainder when x is divided by y |
Bitwise operators
These operate on the individual binary bits in a variable or expression.
| & | bitwise AND | 'x & y' means the result of the bitwise AND operation applied to x and y |
| | | bitwise OR | 'x | y' means the result of the bitwise OR operation applied to x and y |
| ^ | bitwise XOR | 'x ^ y' means the result of the bitwise XOR operation applied to x and y |
| ~ | bitwise NOT | '~x' means the result of the bitwise NOT operator applied to each of the bits of x |
Assignment operators
These are used to assign values to, or directly modify, the value
of a variable
| = | equal | 'x = y' means 'set x to the same value as y' |
| ++ | increment | If ++ is applied to a number variable, it simply adds one to the variable's value. There are two alternative representations: x++ (called 'post-increment') and ++x (called pre-increment). If 'x++' is a statement on its own pre- and post-increment instructions have exactly the same effect. If 'x++' is part of a larger expression being evaluated, pre-increment cause the value to be incremented before the expression is evaluated, while post-increment causes the increment to come after evaluation. In my opinion, a program is easier to understand if it is written in such a way that pre-increment and post-increment would be identical. This saves the reader needing to work out the order in whcih things happen. |
Logical operators
| && | and | 'x && y' is true if both x and y are true |
| || | or | 'x || y' is true if either x or y is true, or both are |
| ! | not | '!x' is true if either x is not true |
Comparison operators
| == | Equal | 'x == y' is true if x is equal to y |
| != | Not equal | 'x != y' is true if x is not equal to y |
©1994-2003 Kevin Boone, all rights reserved