C/Visual C - Arreglos dinámicos

 
Vista:

Arreglos dinámicos

Publicado por Yasmany (9 intervenciones) el 14/01/2007 04:36:23
Me hace falta saber cómo calcular el número de elementos que tiene un arreglo dinámico.
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:Arreglos dinámicos

Publicado por Nelek (816 intervenciones) el 15/01/2007 07:58:34
No estoy seguro pero... podría ser esto?

int UnidadesArray ()
{
int contador = 0;

do
{
contador++;
}
while (ArrayAContar [contador] != NULL)

return contador;
}
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

RE:Arreglos dinámicos

Publicado por Fran (122 intervenciones) el 15/01/2007 20:37:05
otra es incluir en tu tipo arreglo un contador q sume cada vez q agregas un elemento y reste cuando eliminas uno, es muchisimo mas eficiente solo por una operacion y un contador mas de espacio
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

RE:Arreglos dinámicos

Publicado por Yasmany (9 intervenciones) el 17/01/2007 04:38:57
Lo de incluir el contador funciona, pero digamos que en el momento en que estoy calculando el tamaño del arreglo, no dispongo de él.
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

RE:Arreglos dinámicos

Publicado por fernando.gomez (1603 intervenciones) el 17/01/2007 05:46:26
int* i = new int[8];

int size = sizeof(i) / sizeof(int);

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

Duda

Publicado por Nelek (816 intervenciones) el 17/01/2007 07:59:12
Fernando,

eso no es un array con límite superior? creo que la pregunta iba por los creados dinámicamente (con malloc y demás). Serviría igualmente?
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

RE:Duda

Publicado por fernando.gomez (1603 intervenciones) el 17/01/2007 23:26:53
Ahm...

int* i = new int[8];

es un array creado dinámicamente. malloc, calloc, realloc, etc, son para C, y el new tiene la misma función en C++. Digo, claro que puedes emplear malloc et. al., pero también el new.
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