Ver Mensaje Individual
  #4 (permalink)  
Antiguo 31/03/2015, 00:41
eferion
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 9 años, 7 meses
Puntos: 204
Respuesta: Valores repetidos en un arreglo en C

Cita:
Iniciado por RGT Ver Mensaje
Una pregunta hermano, funciona con cualquier cantidad de valores en el arreglo?. Si es mas de 5 en este caso?.

otra cosa, no entendi esta parte:
Código:
for ( i = 0; i < sizeof ( numeros ) / sizeof ( numeros[0] ); i++ ) {
por qué divides?.
sizeof( numeros ) te va a devolver el número de bytes que "ocupa" la variable "numeros"... sizeof( numeros[ 0 ] ), que podrías ponerlo también como sizeof( int ) puesto que cada item de "numeros" es un entero, te va a devolver el tamaño del tipo int... luego si tienes que el arreglo ocupa, por ejemplo 20 bytes y que cada int ocupa 4 bytes tienes 20/4=5 que es el número de elementos del array.

La gracia de usar "sizeof( numeros[0] )" es que si después cambias el tipo del arreglo, por ejemplo "double numeros[5]", no tendrás que tocar nada en el bucle para que todo funcione correctamente, ya que sizeof(numeros[0]) SIEMPRE te va a devolver el tamaño de cada elemento del arreglo.

Con todo lo anterior te respondo a las dos preguntas:

* Sí, como has visto sirve para cualquier número de elementos
* Ya has visto el motivo por el que se divide

Un saludo