[C con Clase] Tamanyo de una matriz externa dentro de una funcion

Narcis Garcia - GiLUG informatica en actiu.net
Jue Nov 27 15:55:03 CET 2008


Tal y como leo en el curso de C++:
http://c.conclase.net/curso/index.php?cap=015b
Al pasar una matriz como parámetro de una función, en realidad se pasa
un puntero, o sea, que no se pasan patrices por valor sino siempre por
referencia.

Así pues, en esta función, en un entorno de 32bits, como tamaño de la
variable se obtiene 4 (4 bytes del puntero), y no el tamaño de los
datos:

void MiFuncion(int LaMatriz[])
{
int NrElementosMatriz;
NrElementosMatriz = sizeof(MiMatriz)/sizeof(MiMatriz[0]);
return 0;
}

¿Cómo puedo obtener el tamaño de los datos referidos?
¿sizeof se comporta igual cuando pasamos una variable cualquiera por
referencia?

Gracias.







Más información sobre la lista de distribución Cconclase