Colección de citas famosas - Slogan de motivación - ¿Cuál es la diferencia entre la definición y declaración de variables del lenguaje C?

¿Cuál es la diferencia entre la definición y declaración de variables del lenguaje C?

La diferencia entre la definición y declaración de variables en lenguaje C

1. Las variables deben definirse o declararse antes de su uso

2. pero se puede declarar varias veces;

3. Defina la asignación de espacio de almacenamiento, pero no se declarará.

Datos extendidos:

Definición de variables: se utiliza para asignar espacio de almacenamiento para variables y también puede especificar valores iniciales para variables. En un programa, las variables tienen una y sólo una definición. ?

Declaración: se utiliza para indicar el tipo y nombre de una variable al programa.

Una definición también es una declaración: al definir una variable, declaramos su tipo y nombre. Puede utilizar extern para declarar un nombre de variable sin definirlo. La declaración de variables indefinidas incluye el nombre del objeto, el tipo de objeto y la palabra clave externa antes del tipo de objeto. ?

Las declaraciones externas no son definiciones y no asignan espacio de almacenamiento. De hecho, simplemente significa que la variable está definida en otra parte del programa. Las variables de un programa se pueden declarar varias veces, pero solo se pueden definir una vez. ?

Una declaración puede tener un inicializador sólo si también es una definición, porque sólo las definiciones asignan espacio de almacenamiento. El inicializador debe tener espacio de almacenamiento para la inicialización. Si una declaración tiene un inicializador, puede considerarse una definición incluso si la declaración está marcada como externa. ?

Cualquier variable utilizada en varios archivos debe declararse por separado de la definición. En este caso, un archivo contiene la definición de la variable y los otros archivos que usan la variable contienen la declaración (pero no la definición) de la variable.