[C con Clase] Duda con Pase de Array como parámetro
Steven Davidson
srd4121 en njit.edu
Mie Ene 26 06:18:25 CET 2011
Hola José Luis,
On 1/26/2011 12:08 AM, Jose Luis Rodriguez Villanueva wrote:
> Hola,
Ante todo, bienvenido a la lsita de correo-e y a este "mundillo" de la
programación.
> tengo una duda respecto al paso de un array como parametros.Por
> ejemplo,por qué los tamaños son diferentes en main() y dentro de la
> función:
>
> void main()
> {
> char numero[10] ="123456789";
> int length =sizeof(numero)/sizeof(numero[0]);
>
> cout<<"En main: El numero de elementos es"<<length<<endl;
>
> }
>
> void RecorreArray(numero[10])
Sería,
void RecorreArray( int numero[10] )
> {
> int length =sizeof(numero)/sizeof(numero[0]);
>
El problema es que 'numero' no es un array propiamente dicho, sino un
puntero que actúa como un array. Por esta razón, el cálculo que haces
siempre resulta en 4 bytes, en una plataforma de 32 bits.
Espero haber aclarado la duda.
Steven
Más información sobre la lista de distribución Cconclase