ayuda en div antiguo...

Tutto quello che non è relazionato con Gemix Studio e la programmazione in linguaggi DIV in generale.
Post Reply
User avatar
OskarG
Posts: 612
Joined: Tue Jan 12, 2010 2:12 am

ayuda en div antiguo...

Post by OskarG »

hola como se pasa una estructura como parametro en div2?¿?
es decir tengo esto

Code: Select all


STRUCT S_A
plano;
altura;
END

calcula_valores(S_A);//

PROCESS calcula_valores(estructura) //intento pasar la estructura con una nueva variable...en c se puede pero en div?¿?
BEGIN
estructura.plano=100;//da error 
S_A.plano=1000;/correcto pero yo quiero cambiar su nombre,pues tengo que hacer cientos de llamadas pero con multiples estructuras diferentes a la misma funcion calcula_valores
END


User avatar
necro_vampire
Posts: 1372
Joined: Fri Oct 10, 2008 12:38 am
Location: Death Soul city???
Contact:

Re: ayuda en div antiguo...

Post by necro_vampire »

la declaracion de la funcion/proceso no deberia ser nombre( struct nombreStruct ) ?
deberia funcionar de namera similar con typedefs
Image
Rein (K´)ah Al-Ghul
Infected with the Krieger strain of the Human-MetaHuman Vampiric Virus.
User avatar
OskarG
Posts: 612
Joined: Tue Jan 12, 2010 2:12 am

Re: ayuda en div antiguo...

Post by OskarG »

hola necro,he intentado hacerlo pero da error,me puedes poner un simple ejemplo que funcione.... lo que expreas asi es en c,pero en div,no va ,hay algo que hago mal.
User avatar
CicTec
Posts: 16590
Joined: Thu Jul 31, 2008 10:18 pm

Re: ayuda en div antiguo...

Post by CicTec »

No se puede pasar una struct en DIV por valor (copia), solo por referencia (puntero):
[Codebox=gemix file=Untitled.gemix]
global
struct st;
int a, b, c;
end

begin
proc(&st);
end

process proc(struct pointer st p_st)
begin
p_st.a = 10;
p_st.b = 20;
p_st.c = 30;
end
[/Codebox]
User avatar
OskarG
Posts: 612
Joined: Tue Jan 12, 2010 2:12 am

Re: ayuda en div antiguo...

Post by OskarG »

Hola Cictec,gracias siempre es bueno aprender algo aunque no lo puedo traspolar a otro lenguaje...y ahora en div como hago para imprimir la variable valor correctamente?¿?No estaria mal que incluyeras este ejemplo en la docu...,pues son cosas simples pero muy prácticas...

Code: Select all

/*
 * whatsnew.txt by o
 * (c) 2019 o
 */

PROGRAM esctructuras;

global


struct st;
int a,b,c;
end
valor;

begin
proc(&st);
valor=st.a;

write_int(0,100,100,0,offset valor);

loop
frame;
end


end

PROCESS proc(struct pointer st p_st)
BEGIN
p_st.a=10;
p_st.b=20;
p_st.c=30;
end





ya funciona a div2 gracias!!! ahora a ver si lo puedo trasladar esta info al otro programa....
User avatar
CicTec
Posts: 16590
Joined: Thu Jul 31, 2008 10:18 pm

Re: ayuda en div antiguo...

Post by CicTec »

De nada.

A que te refieres con "y ahora en div como hago para imprimir la variable valor correctamente?".
OskarG wrote:?No estaria mal que incluyeras este ejemplo en la docu...,pues son cosas simples pero muy prácticas...
Esto ya viene explicado en la DOC de DIV2 sobre las struct.
User avatar
OskarG
Posts: 612
Joined: Tue Jan 12, 2010 2:12 am

Re: ayuda en div antiguo...

Post by OskarG »

Pues no lo sabia palabra y eso que he tenido dos veces el div original,uno que lo compre y otro que lo encontré con su caja y un libro de este ,hasta tengo una copia en usb pues considero que div2 fue un gran programa.
Estoy liado con divgo..pero no entiendo como van las esctructuras en ese engine ,pues no lo puedo traspolar ......
User avatar
CicTec
Posts: 16590
Joined: Thu Jul 31, 2008 10:18 pm

Re: ayuda en div antiguo...

Post by CicTec »

OskarG wrote:Pues no lo sabia palabra y eso que he tenido dos veces el div original,uno que lo compre y otro que lo encontré con su caja y un libro de este ,hasta tengo una copia en usb pues considero que div2 fue un gran programa.
Por eso digo, si lo teneis y no se lee la DOC que hay, a cosa se pregunta de dedicar el tiempo a hacer una y los tutorials/ejemplos ? :angel:
OskarG wrote: Estoy liado con divgo..pero no entiendo como van las esctructuras en ese engine ,pues no lo puedo traspolar ......
No conozco DIVGO en detalle, apenas lo he probado, pero si no funciona, lo mas probable es que no tenga ese soporte anadido y por eso no funciona.
Post Reply

Return to “Offtopic”