Operator Expressions
Syntax
OperatorExpression :
ArithmeticOpExpression
| BitwiseOpExpression
| LogicalOpExpression
| ComparisonExpression
| AssignementExpression
| StringOpExpression
Arithmetic Operations
Syntax
ArithmeticOpExpression :
-
Expression
| Expression+
Expression
| Expression-
Expression
| Expression*
Expression
| Expression/
Expression
| Expression//
Expression
| Expression%
Expression
| Expression**
Expression
These operators are, in order, the negation, addition, substraction, multiplication, division, integer division, modulo and exponentiation operators.
Bitwise Operations
Syntax
BitwiseOpExpression :
~
Expression
| Expression&
Expression
| Expression|
Expression
| Expression^
Expression
These operators represent, in order, the bitwise NOT, AND, OR and XOR operators.
Logical Operations
Syntax
LogicalOpExpression :
!
Expression
| Expression&&
Expression
| Expression||
Expression
These operator represent, respectively, the logical NOT, AND and OR operators.
Comparisons
Syntax
ComparisonExpression :
Expression>
Expression
| Expression>=
Expression
| Expression<
Expression
| Expression<=
Expression
| Expression==
Expression
| Expression!=
Expression
These operators represent, in order, the greater than, greater or equal, less than, less than or equal, equal and not equal operators.
Assignements
Syntax
AssignementExpression :
Expression:=
Expression
The expression on the left side of the operator must be assignable to (a lvalue). It must also not have been declared as const
.
String Operations
Syntax
StringOpExpression :
Expression@
Expression
This operator represents the string concatenation.