Declaradores y declaraciones de variable
En el resto de esta sección se describe el formato y el significado de las declaraciones de tipos de variable resumidos en esta lista. En concreto, en las secciones restantes se explica cómo declarar lo siguiente:
Tipo de variable | Descripción |
---|---|
Variables simples | Variables de valor único con tipo entero o de punto flotante |
Matrices | Variables compuestas por una colección de elementos con el mismo tipo |
Punteros | Variables que apuntan a otras variables y contienen ubicaciones variables (en forma de direcciones) en lugar de valores |
Variables de enumeración | Variables simples con tipo entero que contiene un valor de un conjunto de constantes enteras con nombre |
Estructuras | Variables compuestas por una colección de valores que pueden tener diferentes tipos |
Uniones | Variables formadas por varios valores de tipos diferentes que ocupan el mismo espacio de almacenamiento |
Un declarador es la parte de una declaración que especifica el nombre que se va a introducir en el programa. Puede incluir modificadores como *
(puntero a) y cualquiera de las palabras clave de convención de llamada de Microsoft.
Específicos de Microsoft
En este declarador,
__declspec(thread) char *var;
char
es el especificador de tipo, __declspec(thread)
y *
son los modificadores, y var
es el nombre del identificador.
FIN de Específicos de Microsoft
Utilice declaradores para declarar matrices de valores, punteros a valores y funciones que devuelvan valores de un tipo especificado. Los declaradores aparecen en las declaraciones de matriz y puntero descritas más adelante en esta sección.
Sintaxis
declarator
:
pointer
opt direct-declarator
direct-declarator
:
identifier
(
declarator
)
direct-declarator
[
constant-expression
opt ]
direct-declarator
(
parameter-type-list
)
direct-declarator
(
identifier-list
opt )
pointer
:
*
type-qualifier-list
opt
*
opttype-qualifier-list
pointer
type-qualifier-list
:
type-qualifier
type-qualifier-list
type-qualifier
Nota:
Consulte la sintaxis de declaration
en Información general sobre las declaraciones o en Resumen de la sintaxis de lenguaje C para ver la sintaxis que hace referencia a un objeto declarator
.
Cuando un declarador consta de un identificador sin modificar, el elemento que se va a declarar tiene un tipo base. Si aparece un asterisco (*
) a la izquierda de un identificador, el tipo se modifica en un tipo de puntero. Si el identificador va seguido de corchetes ( [ ]
), el tipo se modifica en un tipo de matriz. Si el identificador va seguido de paréntesis, el tipo se modifica a tipo de función. Para obtener más información sobre cómo interpretar la prioridad en declaraciones, vea Interpretación de declaradores más complejos.
Cada declarador declara al menos un identificador. Un declarador debe incluir un especificador de tipo para que sea una declaración completa. El especificador de tipo proporciona el tipo de los elementos de un tipo de matriz, el tipo de objeto al que apunta un tipo de puntero o el tipo de valor devuelto de una función.
Las declaraciones de matriz y puntero se explican con más detalle más adelante en esta sección. En los ejemplos siguientes se muestran algunas formas simples de declaradores:
int list[20]; // Declares an array of 20 int values named list
char *cp; // Declares a pointer to a char value
double func( void ); // Declares a function named func, with no
// arguments, that returns a double value
int *aptr[10]; // Declares an array of 10 pointers
Específicos de Microsoft
El compilador de Microsoft C no limita el número de declaradores que pueden modificar un tipo aritmético, de estructura o de unión. El número solo está limitado por la memoria disponible.
FIN de Específicos de Microsoft