C ++, ejemnplo dematriz

Solo disponible en BuenasTareas
  • Páginas : 3 (689 palabras )
  • Descarga(s) : 0
  • Publicado : 17 de septiembre de 2009
Leer documento completo
Vista previa del texto
int a[10]; // declara una matriz de 10 elementos enteros
char ch[10] // ídem de 10 elementos char
char* p[10] // ídem de 10 elementos puntero-a-carácter
struct St mst[10] //ídem de 10 elementos estructuras tipo St

§3 Acceso a elementos
Existen dos formas de acceder a los elementos de una matriz: mediante subíndices y mediante punteros. En cuanto a la primera, el empleode subíndices es la forma que podemos llamar "canónica". Por ejemplo a[i] representa el elemento i+1avo. Recuerde que la numeración empieza por 0, de forma que a[1] es en realidad el segundo elemento (4.9.16 Operador de elemento de matriz). El acceso a elementos mediante punteros, se detalla en el apartado siguiente ( 4.3.2). Los elementos de la matriz del primer ejemplo se referencian mediante:a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8] y a[9]

§4 En ciertos contextos, el primer declarador de una matriz puede no contener una dentro de las llaves, por ejemplo:

int array[];Este tipo de matriz, de tamaño indeterminado, resulta aceptable en situaciones donde el tamaño no es necesario para reservar espacio, pero siguen siendo necesarias las llaves para indicar que lavariable es una matriz. Por ejemplo, una declaración extern de una matriz no necesita el tamaño exacto de la misma; alguna otra declaración tampoco la necesita, porque el tamaño está implícito en eldeclarador. Por ejemplo:

char arr[] = "AEIOU"; // declara matriz de 6 elementos [1]
char arr[] = {'A','E','I','O','U'}; // declara matriz de 5 elementos

Inicialización
En ocasionesla declaración puede incluir una inicialización de la matriz como en los siguientes ejemplos:

cons int an[5] = {1, 2, 3, 4, 5}; // L.1:
char ak[5] = {'a','e','i','o','u'}; // L.2:
int ax[6] ={1,2,3,4}; // L.3: == {1,2,3,4,0,0}
char c[2] = {'1','2','3'}; // L.4: Error!
char c[2] = "AEIOU"; // L.5: Error!
char ac[5] = "AEIOU"; // L.6:...
tracking img