Contents |
declared at global scope - global
extern - declare, but don't define
auto (default) - local to current scope, destroy when out of scope
register - tell compiler to optimze for access to this variable
static - local to current scope, don't destroy
static inside class - common to all class instances
const - immutable
volatile - may change as result of other process
don't make optimizations that expect it not to change
Deprecated:
static at global scope - unavailable outside of this file
Syntax:
[specifier] base_type declarator [initializer]
Example:
const unsigned int *char[] = {"stuff"};
specifier base_type declarator initializer
Declarator prefix operators:
* *const - constant pointer &
Declarator postfix operators - these "bind tighter" than prefix operators:
[] () - function
The following definitions are equivalent:
X x(1); X y = X(1); X z = 1;
where X can be any type. Gcc generates the same code for each of them.