United States |
|
|
||
Appendix A
|
{ expressionopt } |
The section numbers shown in parentheses refer to the section of the American National Standard for Information Systems-Programming Language C (document number: X3.159-1989) that discusses that part of the language.
token: (§3.1)
keyword |
preprocessing-token: (§3.1)
header-name |
keyword: (§3.1.1) one of
|
auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if static while _Bool _Complex (ALPHA ONLY) |
identifier: (§3.1.2)
identifier-nondigit |
identifier-nondigit:
nondigit |
nondigit: §3.1.2 one of
|
a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z _ |
digit: (§3.1.2) one of
|
0 1 2 3 4 5 6 7 8 9 |
constant: (§3.1.3)
floating-constant |
floating-constant: (§3.1.3.1)
decimal-floating-constant |
decimal-floating-constant
fractional-constant exponent-partopt floating-suffixopt |
hexadecimal-floating-constant
hexadecimal-prefix hexadecimal-fractional-constant binary-exponent-part floating-suffixopt |
fractional-constant: (§3.1.3.1)
digit-sequenceopt . digit-sequence |
exponent-part: (§3.1.3.1)
e signopt digit-sequence |
sign: (§3.1.3.1) one of
+ -- |
digit-sequence: (§3.1.3.1)
digit |
hexadecimal-fractional-constant:
hexadecimal-digit-sequenceopt . hexadecimal-digit-sequence |
binary-exponent-part:
p signopt digit-sequence |
hexadecimal-digit-sequence:
hexadecimal-digit |
floating-suffix: (§3.1.3.1) one of
|
f l F L
integer-constant: (§3.1.3.2)
decimal-constant integer-suffixopt |
decimal-constant: (§3.1.3.2)
nonzero-digit |
octal-constant: (§3.1.3.2)
0 |
hexadecimal-constant: (§3.1.3.2)
0x hexadecimal-digit |
nonzero-digit: (§3.1.3.2) one of
|
1 2 3 4 5 6 7 8 9 |
octal-digit: (§3.1.3.2) one of
|
0 1 2 3 4 5 6 7 |
hexadecimal-digit: (§3.1.3.2) one of
|
0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F |
integer-suffix: (§3.1.3.2)
unsigned-suffix long-suffixopt |
unsigned-suffix: (§3.1.3.2) one of
|
u U
long-suffix: (§3.1.3.2) one of
|
l L
enumeration-constant: (§3.1.3.3)
identifier |
character-constant: (§3.1.3.4)
' c-char-sequence' |
c-char-sequence: (§3.1.3.4)
c-char |
c-char: (§3.1.3.4)
any member of the source character set except |
escape-sequence: (§3.1.3.4)
simple-escape-sequence |
simple-escape-sequence: (§3.1.3.4) one of
|
\' \" \? \\ \a \b \f \n \r \t \v |
octal-escape-sequence: (§3.1.3.4)
\ octal-digit |
hexadecimal-escape-sequence:(§3.1.3.4)
\x hexadecimal-digit |
string-literal: (§3.1.4)
"s-char-sequenceopt" |
s-char-sequence: (§3.1.4)
s-char |
s-char: (§3.1.4)
any member of the source character set except |
operator: (§3.1.5) one of
|
[ ] ( ) . -> ++ -- & * + - ~ ! sizeof / % << >> < > <= >= == != ^ | && || ? : = *= /= %= += -= <<= >>= &= ^= |= , # ## |
punctuator: (§3.1.6) one of
|
[ ] ( ) { } * , : = ; ... # |
header-name: (§3.1.7)
<h-char-sequence> |
h-char-sequence: (§3.1.7)
h-char |
h-char: (§3.1.7)
any member of the source character set except |
q-char-sequence: (§3.1.7)
q-char |
q-char: (§3.1.7)
any member of the source character set except |
pp-number: (§3.1.8)
digit |
A.1.2 Phrase Structure Grammar
primary-expression: (§3.3.1)
identifier |
postfix-expression: (§3.3.2)
primary-expression |
argument-expression-list: (§3.3.2)
assignment-expression |
unary-expression: (§3.3.3)
postfix-expression |
unary-operator: (§3.3.3) one of
|
& * + - ~ ! |
cast-expression: (§3.3.4)
unary-expression |
multiplicative-expression: (§3.3.5)
cast-expression |
additive-expression: (§3.3.6)
multiplicative-expression |
shift-expression: (§3.3.7)
additive-expression |
relational-expression: (§3.3.8)
shift-expression |
equality-expression: (§3.3.9)
relational-expression |
AND-expression: (§3.3.10)
equality-expression |
exclusive-OR-expression: (§3.3.11)
AND-expression |
inclusive-OR-expression: (§3.3.12)
exclusive-OR-expression |
logical-AND-expression: (§3.3.13)
inclusive-OR-expression |
logical-OR-expression: (§3.3.14)
logical-AND-expression |
conditional-expression: (§3.3.15)
logical-OR-expression |
assignment-expression: (§3.3.16)
conditional-expression |
assignment-operator: (§3.3.16) one of
|
= *= /= %= += -= <<= >>= &= ^= |= |
expression: (§3.3.17)
assignment-expression |
constant-expression: (§3.4)
conditional-expression |
declaration: (§3.5)
declaration-specifiers init-declarator-listopt ; |
declaration-specifiers: (§3.5)
storage-class-specifier declaration-specifiersopt |
init-declarator-list: (§3.5)
init-declarator |
init-declarator: (§3.5)
declarator |
storage-class-specifier: (§3.5.1)
typedef |
type-specifier: (§3.5.2)
void |
struct-or-union-specifier |
struct-or-union-specifier: (§3.5.2.1)
struct-or-union identifieropt { struct-declaration-list } |
struct-or-union: (§3.5.2.1)
struct |
struct-declaration-list: (§3.5.2.1)
struct-declaration |
struct-declaration: (§3.5.2.1)
specifier-qualifier-list struct-declarator-list ; |
Previous | Next | Contents | Index |
privacy statement and legal notices |