Compartir vía


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:
pointeropt direct-declarator

direct-declarator:
identifier
( declarator )
direct-declarator [ constant-expressionopt ]
direct-declarator ( parameter-type-list )
direct-declarator ( identifier-listopt )

pointer:
* type-qualifier-listopt
*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

Vea también

Declaraciones y tipos