Every C variable has a type, a scope and a storage duration.
1Rules
Global and static variables are zero-initialised; automatic (local) variables are not
A partially initialised array has its remaining elements set to 0
Inner-block declarations hide outer ones
Storage classes: auto, register, static, extern