Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los nombres “de una declaración de matriz” la matriz y especifican el tipo de sus elementos.Puede definir el número de elementos de la matriz.Una variable con el tipo de matriz se considera un puntero al tipo de los elementos de la matriz.
Sintaxis
declaration:
init-declarante-lista **;**optde los declaración-especificadoresinit-declarante-lista:
init-declaranteinit-declarante de**,** de la init-declarante-lista
init-declarante:
enumerationinicializadorde**=** de declaradores
declarator:
directo-declaranteoptde punterodirecto-declarante:
expresión constante ]deopt[ de directo-declarante
Dado que la expresión constante es opcional, la sintaxis tiene dos formas:
El primer formulario define una variable de matriz.El argumento de expresión constante dentro de los corchetes especifica el número de elementos de la matriz.La expresión constante, si está presente, debe tener el tipo entero, y un valor mayor que cero.Cada elemento tiene el tipo especificado por el especificador de tipo, que puede ser de cualquier tipo excepto void.Un elemento de matriz no puede ser un tipo de función.
El segundo formulario declara una variable que se ha definido en otra parte.Omite el argumento de expresión constante entre corchetes, pero no los corchetes.Puede utilizar este formulario únicamente si ha inicializado previamente la matriz, se ha declarado como parámetro, o se ha declarado como referencia a explícitamente una matriz definido en otra parte del programa.
En ambos formatos, los nombres de directo-declarante la variable y pueden modificar el tipo de la variable.El directo-declarante de siguiente de corchetes ([]) modifica el declarador a un tipo de matriz.
Los calificadores de tipo pueden aparecer en la declaración de un objeto de tipo de matriz, pero los calificadores se aplican a los elementos en lugar de la matriz en sí.
Puede declarar una matriz de matrices (matriz “multidimensional”) siguiendo el declarador de matriz con una lista de expresiones constantes acorchetadas en este formulario:
type-specifier declarator [constant-expression] [constant-expression] ...
Cada expresión constante en corchetes define el número de elementos en una dimensión determinada: matrices bidimensionales tienen dos expresiones entre paréntesis, matrices tridimensionales tienen tres, etc.Puede omitir la primera expresión constante si se ha inicializado la matriz, se ha declarado como parámetro, o se ha declarado como referencia a explícitamente una matriz definido en otra parte del programa.
Puede definir las matrices de punteros a los distintos tipos de objetos mediante declarantes complejos, como se describe en interpretación de declarantes más complejos.
las matrices se almacenan por fila.Por ejemplo, la siguiente matriz consta de dos filas con tres columnas cada uno:
char A[2][3];
Las tres columnas de la primera fila se almacenan primero, seguido por las tres columnas de la segunda fila.Esto significa que el subíndice último varía lo más rápidamente posible.
Para hacer referencia a un elemento individual de una matriz, utilice una expresión subscribe, como se describe en Operadores postfijos.
Ejemplos
Estos ejemplos muestran declaraciones de matriz:
float matrix[10][15];
la matriz bidimensional denominada matrix tiene 150 elementos, cada uno que tiene el tipo de Hacer flotante .
struct {
float x, y;
} complex[100];
Ésta es una declaración de una matriz de estructuras.Esta matriz tiene 100 elementos; cada elemento es una estructura que contiene dos miembros.
extern char *name[];
Esta instrucción declara el tipo y el nombre de una matriz de punteros a char.La definición real de name aparece en otra parte.
Específicos de Microsoft
El tipo de entero necesario contener el tamaño máximo de una matriz es el tamaño de size_t.definido en el archivo de encabezado STDDEF.H, size_t es unsigned int con el intervalo 0x00000000 a 0x7CFFFFFF.
Específico de Microsoft de FINAL