The lexemes in the following table are specific to C and C++. The state stays in LNORM.
Lexeme |
Representation |
Language |
---|---|---|
AMPERSAND | "&" | C, C++ |
ANDAND | "&&" | C, C++ |
ANDassign | "&=" | C, C++ |
ARROW | "->" | C, C++ |
ASSIGNOP | "=" | C, C++ |
BRACKETS | "[]" | C, C++ |
CHAR | char | C, C++ |
CONST | const | C, C++ |
DECR | "--" | C, C++ |
DIVassign | "/=" | C, C++ |
DOUBLE | double | C, C++ |
ENUM | enum | C, C++ |
EQ | "==" | C, C++ |
ERassign | "^=" | C, C++ |
FLOAT | float | C, C++ |
FLOATINGconstant | {DG}*"."{DG}* {DG}*"."{DG}* {Whitespace}?{Exponent} {DG}+{Whitespace}?{Exponent} |
C, C++ |
HAT | "^" | C, C++ |
IDENTIFIER, TYPEDEFname | {LT}|{UCN})({LT}|{UCN}|{DG})* | C, C++ |
INCR | "++" | C, C++ |
INT | int | C, C++ |
INTEGERconstant | "0"{OC}+
"0"[xX]{HX}+ {DG}+ |
C, C++ |
LBRACKET | "[" | C, C++ |
LONG | long | C, C++ |
LS | "<<" | C, C++ |
LSassign | "<<=" | C, C++ |
MINUS | "-" | C, C++ |
MINUSassign | "-=" | C, C++ |
MOD | "%" | C, C++ |
MODassign | "%=" | C, C++ |
MULTassign | "*=" | C, C++ |
NE | "!=" | C, C++ |
NOT | "!" | C, C++ |
OR | "|" | C, C++ |
ORassign | "|=" | C, C++ |
OROR | "||" | C, C++ |
PLUS | "+" | C, C++ |
PLUSassign | "+=" | C, C++ |
QUESTION | "?" | C, C++ |
RBRACKET | "]" | C, C++ |
RS | ">>" | C, C++ |
RSassign | ">>=" | C, C++ |
SHORT | short | C, C++ |
SIGNED | signed | C, C++ |
SIZEOF | sizeof | C, C++ |
STRUCT | struct | C, C++ |
TWIDDLE | "~" | C, C++ |
UNION | union | C, C++ |
UNSIGNED | unsigned | C, C++ |
VOID | void | C, C++ |
VOLATILE | volatile | C, C++ |
The lexemes in the following table are specific to C++. The state stays in LNORM.
Lexeme |
Representation |
Language |
---|---|---|
ARROWstar | "->*" | C++ |
CLASS | class | C++ |
CLCL | "::" | C++ |
DELETE | delete | C++ |
DOTstar | ".*" | C++ |
ELLIPSIS | "..." | C++ |
NEW | new | C++ |
OPERATOR | operator | C++ |
PARENS | "()" | C++ |
THIS | this | C++ |