The "Unknown:"s below indicate that an entry is incomplete.
| { ... }(1) | block (grouping statements, especially when statements are not expressions) |
| nothing needed | breaking lines (useful when end-of-line and/or indentation has a special meaning) |
| /* ... */ | commenting (non nestable) |
| < > <= >= | comparison |
| == != | equality / inequality (shallow) |
| ( ... ) | grouping expressions |
| case-sensitive | tokens (case-sensitivity (keywords, variable identifiers...)) |
| [_a-zA-Z][_a-zA-Z0-9]* | tokens (variable identifier regexp) |
| = | variable assignment or declaration (assignment) |
| auto v1, v2; extrn v3, v4; | variable assignment or declaration (declaration) |
| f(a,b,...) | function call |
| return(2) | function return value (breaks the control flow) |
| goto | breaking control flow (goto (unconditional jump)) |
| return(2) | breaking control flow (returning a value) |
| if (c) ... | if_then |
| if (c) b1 else b2 | if_then_else |
| c ? b1 : b2 | if_then_else |
| while (c) ... | loop (while condition do something) |
switch val {
case v1: ...; goto done;
case v2: case v3: ...; goto done;
}
...;
done:
| multiple selection (switch) |
| ; | sequence |
| char(s, i) | accessing n-th character |
| 'z' | character "z" |
| "*n" | strings (end-of-line (without writing the real CR or LF character)) |
| 0(3) | false value |
| ! | logical not |
| | / & | logical or / and (short circuit) |
| anything not false | true value |
| a[i] | list/array indexing |
| & | reference (pointer) (creation) |
| *(4) | reference (pointer) (dereference) |
| % | modulo (modulo of -3 / 2 is -1) |
| - | negation |
| 07 | numbers syntax (integers in base 2, octal and hexadecimal) |
| 1000 | numbers syntax (integers) |
