Hola RGT.
Así, tál como lo mostras, no concibo que no te funcione. Pero si no me equivoco, estas haciendo algo como esto:
Código C:
Ver original...
void mostrar ( int *v ) {
int i;
for ( i = 0; i < sizeof(v) / sizeof(int); i++ )
}
int main ( ) {
int v[10] = {5, 8, 2, 3, 1, 4, 6, 9, 2, 10};
mostrar ( v );
...
de ese modo sí que entiendo el comportamiento que comentas... Por que,
Código:
sizeof ( v ) = 4 y sizeof ( int ) = 4
entonces:
sizeof ( v ) / sizeof ( int ) = 1
por lo que:
for ( i = 0; i < 1 ; i++) -> i = 0
de ese modo, sólo se muestra el valor de v[0] que es 5.
Deberías hacer algo similar a esto:
Código C:
Ver original...
void mostrar ( int* v, int sz ) {
int i;
for ( i = 0; i < sz; i++ )
}
int main ( ) {
int v[10] = {5,8,2,3,1,4,6,9,2,10};
mostrar ( v, sizeof(v) / sizeof(int) );
Saludos.