Pasar un array como parametro de un process

Started by Outlaw, October 09, 2010, 06:21:16 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Outlaw

Hola a todos! Estoy tratando de ver como hacer para pasarle como parametro a una funcion, no un dato, sino un array (o lista) seria asi

Process Ejemplo(dato, array[])

Me da:
error: Parameter type invalid ("ARRAY")

¿Tal vez estoy tratando de hacer algo que no se puede?
"Life is cheap when the bounty is high"

Danielo515

Si, le estás intentando pasar un tipo de dato que no corresponde con la declaración.
De todos modos deberías decir que tipo de dato es el array.

proceso(int dato, int array[])


Y aún así, no se si te dejaría trabajar con el. Puedes probar también con un puntero que a fin de cuentas es lo mismo

proceso(int dato, pointer array)
begin
x=*array;
array++;
y=*array;
.
.
.
end

*array es la forma de acceder al contenido del puntero (que no al propio puntero) y array++ es para pasar al siguiente registro.

Outlaw

Genial! No me avive de usar un puntero, lo voy a probrar, gracias...
"Life is cheap when the bounty is high"

Drumpi

Creo que no se podían pasar arrays como parámetro (y obviamente tampoco devolverlos).
Se hace siempre con punteros (mientras el proceso que creó el array siga vivo), o bien mediante variables globales.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

JaViS

La cuestion aqui seria saber que tamaño tiene el array si se lo estas pasando como puntero.
Working on Anarkade. A couch multiplayer 2D shooter.

Outlaw

No entiendo a que te referis, funciona bien con cualquier tamaño de puntero, aun sin declarar la longitud cuando lo llamas...
"Life is cheap when the bounty is high"

SplinterGU

los array se pasan como punteros, lo que quiere decir JaViS, es que como se pasa como puntero, desde la funcion no sabes el tamaño del array. por eso se debe trabajar con tamaño conocido o agregando un parametro a tu funcion que indique la cantidad de elementos del array.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2