Disponible la nueva versión "donationware" 7.3 de OrganiZATOR
Descubre un nuevo concepto en el manejo de la información.
La mejor ayuda para sobrevivir en la moderna jungla de datos la tienes aquí.

Curso C++

[Home]  [Inicio]  [Índice]


Ejemplo

El ejemplo adjunto muestra las características (tipo y tamaño) de los elementos de una matriz bidimensional tal como son considerados por el compilador.

 

#include <iostream.h>
#include <typeinfo.h>

int main(void) {                     // ===============
  char* a1[2] = {"Ok", "Falso"};     // matriz de punteros a carácter
  char a2[][7]= {"Ok", "Falso"};     // matriz de caracteres

  cout << "a1 es tipo " << typeid(a1).name()
       << " tamaño: " << sizeof(a1) << " Bytes" << endl;
  cout << " a1[0] tipo: " << typeid(a1[0]).name() << " -> " << a1[0] << endl;
  cout << " tamaño: " << sizeof(a1[0]) << " Bytes" << endl;
  cout << " a1[1] tipo: " << typeid(a1[1]).name() << " -> " << a1[1] << endl;
  cout << " tamaño: " << sizeof(a1[1]) << " Bytes" << endl;

  cout << "a2 es tipo " << typeid(a2).name()
       << " tamaño: " << sizeof(a2) << " elementos" << endl;
  cout << " a2[0] tipo: " << typeid(a2[0]).name() << " -> " << a2[0] << endl;
  cout << " tamaño: " << sizeof(a2[0]) << " elementos" << endl;
  cout << " a2[1] tipo: " << typeid(a2[1]).name() << " -> " << a2[1] << endl;
  cout << " tamaño: " << sizeof(a2[1]) << " elementos" << endl;
  return 0;
}

Salida:

a1 es tipo char *[2] tamaño: 8 Bytes
 a1[0] tipo: char * -> Ok
 tamaño: 4 Bytes
 a1[1] tipo: char * -> Falso
 tamaño: 4 Bytes
a2 es tipo char[2][7] tamaño: 14 elementos
 a2[0] tipo: char[7] -> Ok
 tamaño: 7 elementos
 a2[1] tipo: char[7] -> Falso
 tamaño: 7 elementos

Temas relacionados: