Initialization
cannot guarantee whether if it contain a well-defined value if the variable is not local (defined later in the scope part).
Assignment
Variables
Name
Naming conventions
Address (l-value)
Type
Value (r-value)
Lifetime
Scope
e.g. (hiding, defined later)
if it is a constant, starting with "k" to denote that, then it is a global variable.
p.s. it's fine to define the same name in different scope.
Hiding
Declaration
type declaration
declaration structure
declarator
Specifier of non-type attribute: const