6.7.6 declarators
Grammar
1,declarator:
pointeropt Direct-declarator
direct-declarator:
identifier
( declarator )
Direct-declarator [ type-qualifier-listopt assignment-expressionopt ]
Direct-declarator [Static type-qualifier-listopt assignment-expressionopt ]
Direct-declarator [ type-qualifier-listopt static assignment-expressionopt ]
Direct-declarator [ type-qualifier-listopt * ]
Direct-declarator ( parameter-type-list )
Direct-declarator ( identifier-listopt )
pointer:
* type-qualifier-listopt
* type-qualifier-listopt Pointer
type-qualifier-list:
Type-qualifier
type-qualifier-list Type-qualifier
parameter-type-list:
parameter-list
parameter-list , ...
parameter-list:
parameter-declaration
parameter-list , parameter-declaration
parameter-declaration:
Declaration-specifier declarator
Declaration-specifier abstract-declaratoropt
identifier-list:
identifier
identifier-list , identifier
Semantic
2. Each declarator declares an identifier, and asserts that when an operand is the same as the declarator and appears in an expression, the operand assigns a function or object, the scope, storage period, and type indicated by the declaration specifier.
3.
ISO/IEC 9,899:2011 clause 6.7.6--declarator