C/Visual C - El count de un Array

 
Vista:
sin imagen de perfil

El count de un Array

Publicado por Edwin (70 intervenciones) el 04/10/2006 22:19:22
Hola a todos...

Estoy empezando en C, como puedo saber la cantidad de datos que tiene una variable de tipo arreglo, por ejemplo:

int a[5]

Lo que quiero es la función que me muestre la cantidad de variables de la variable tipo arreglo a[], en este ejemplo es 5.

Gracias de Antemano, lo necesito para poder hacer un listado de mayor a menor de dicha cantidad de números.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:El count de un Array

Publicado por fernando.gomez (1603 intervenciones) el 05/10/2006 00:45:29
Un array es un tipo de dato donde las variables van seguidas unas de otras, secuencialmente, en la memoria. Luego, la suma del tamaño del tipo de dato, de todos los elementos del array es igual a sizeof(array) -asumiento que "array" es la variable. Por ende, basta con dividir este valor entre el tamaño del tipo de dato.

int array[5];
int cuenta = sizeof(array) / sizeof(int);
cout << "Este array tiene " << cuenta << " elementos." << endl;

Si no sabes cuál es el tipo de dato del array (un ejemplo sería si te pasan la variable como tipo void* ) entonces divide entre el tamaño del primer elemento.

int array[5];
int cuenta = sizeof(array) / sizeof(array[0]);
cout << "Este array tiene " << cuenta << " elementos." << endl;

Más difícil es el asunto cuando tienes un array dinámico. En estos casos, puede ser que el array no contenga elemento alguno. En estos casos el primer elemento siempre será 0 (recordemos que todos los arrays tienen un elemento adicional, el último, el cuál es el caracter nulo; como las cadenas de texto, que a final de cuentas son arrays de caracteres).

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar