6.5.1 Primary expressions

Syntax

1

primary-expression:

identifier

constant

string-literal

( expression )

Semantics

2

An identifier is a primary expression, provided it has been declared as designating an object (in which case it is an lvalue) or a function (in which case it is a function designator).[1]

3

A constant is a primary expression. Its type depends on its form and value, as detailed in 6.4.4.

4

A string literal is a primary expression. It is an lvalue with type as detailed in 6.4.5.

5

A parenthesized expression is a primary expression. Its type and value are identical to those of the unparenthesized expression. It is an lvalue, a function designator, or a void expression if the unparenthesized expression is, respectively, an lvalue, a function designator, or a void expression.

Forward References

Footnotes