18.2.8 Clearing Objects
The runtime start-up code will clear all memory locations occupied by uninitialized
variables so they will contain zero before main()
is executed.
Variables whose contents should be preserved over a Reset should use the
persistent
attribute, see 9.9 Standard Type Qualifiers for
more information. Such variables are linked in a different area of memory and are not
altered by the runtime start-up code in any way.