2. ¿Cual es la mejor manera de declarar y definir variables
globales?
Lo
primero que debes tener claro, es que aunque pueda haber muchas
declaraciones de una única variable o función global,
debe haber exactamente una única definición
.
La definición es la declaración que en realidad
asigna el espacio, y proporciona un valor de inicialización,
si es necesario.
La mejor solución es colocar cada definición en
algún archivo relevante .c, con una declaración
externa en un fichero cabecera (".h"), que es incluido
(#inclued) cuando se necesita la declaración. El
archivo .c que contiene la definición debería también
incluir el mismo archivo cabecera, para que el compilador pueda
comprobar que la definición coincide con las declaraciones.
Esta regla promueve un grado alto de portabilidad: esto es compatible
con las exigencias del Estándar de C ANSI, y es también
compatible con la mayoría de los compiladores y ensambladores
pre ANSI.
.