Título: Punteros concatenados. Como guardar una direccion de memoria? Publicado por: AXA en 21 Octubre 2021, 17:18 pm No encuentro forma de guardar una dir de memoria. yo intente.
Y obviamente no guarda las direcciones. Como hago para guardar una direccion y leerla?. class clist { public: clist *pred,*post } clist *pr,*po; void new(clist *l) { clist l1,l2; l1=malloc(sizeof(l1)); l2=malloc(sizeof(l2)); clist ll; ll.pred=NULL; ll.post=l2; *l1=ll; ll.pred=l1; ll.post=NULL; *l2=ll; l=l1; pr=l1; po=l2; } main () { clist *l; new(l); clist ll; ll=*l; if (l.post==po) printf("todo bien"); else printf("todo mal"); getch(); } Título: Re: Punteros concatenados. Como guardar una direccion de memoria? Publicado por: Eternal Idol en 21 Octubre 2021, 17:51 pm Tenes que pasar el puntero como referencia o doble puntero. Mejor explicado aca:
http://conclase.net/c/curso/cap15 Ejemplo de como lo estas haciendo y como podria funcionar, en error l es una variable local pasada por valor: Código
Por cierto tu codigo no compila ni a palos, no podes llamar new a una funcion en C++ al ser una palabra clave (y no podes usar class en C ...). Título: Re: Punteros concatenados. Como guardar una direccion de memoria? Publicado por: AXA en 22 Octubre 2021, 02:48 am Muchas gracias IDOL. Queria preguntarte que C++ usas. Yo instale dos que encontre gratis para windows. Uno es el free c++ y el otro es el 5.2 de borland. Pero no tiene graphics.h . Hay otra forma de iniciar la alta resolucion? u otro c++?
Título: Re: Punteros concatenados. Como guardar una direccion de memoria? Publicado por: Eternal Idol en 22 Octubre 2021, 08:36 am Visual C++: https://docs.microsoft.com/en-us/cpp/?view=msvc-160
Podes usar DirectX, OpenGL o Vulkan por ejemplo pero mejor concentrate en aprender los fundamentos basicos del lenguaje y ya con el tiempo decidiras que API usar. Título: Ayuda Publicado por: AXA en 23 Octubre 2021, 01:16 am No consigo entender como funciona. Si me mandas resuelto lo que quiero hacer te lo agradeceria mucho. Yo nocesito enlazar...
class clist { public: clist pred,post; char data[20]; } yo programaba en pascal y es muy facil. pero aca no tengo idea. basicxamente deberia ser clist l; l=l.post; y salta al siguiente. Como hago aca?. el int ** no lo supe usar bien te mando lo que intente hacer. Ademas vi que solo es un desplazamiento. no conserva segmento y desplazamiento. yo nocesito mucha memoria. Hice un lisp en pascal, el lenguaje de inteligencia artificial, estoy aprendiendo a usarlo con un agedres y vi que el c en windows es rapidicimo. En pascal un contador en un segundo llega a 20 millones y aca a 5 billines que pareciera ser mas rapido de lo que dan los hrzs.Mejor. Pero estoy atado a hacer una cadena de punteros para seguir. el resto ya se lo suficiente. Entendes lo que necesito? Yo tengo que hacer un nuevo clist , cargar el data y leerlo. enlazar en pred el clist anterior y en el anterior el nuevo. Yo pensaba usar lo que me distes pero no funciona como pareceria. en pasacal vos tenes variables pointer y punteros. todos son seg y ofs. type clist = object pred,post:pointer; data:string[20]; end; var l,ln:=*clist; begin new(l); l.data="uno"; l.pred=nil; new(ln); ln.data="dos"; ln.pred=l; ln.post=nil; while *l.post<>nil do begin write(*l.data); l=*l.post; end; end. Esto es lo que necesito en c. Si me lo das siguo sin problemas. En pascal no es *, es el triangulo hacia arriba que no lo encuento. Pero basicamente l es un pointer (segmento,desplazamiento). *l es el contenido o se asigna al contenido. Te pido encarecidamente que me des un ejemplo resuelto porque no lo voy a sacar sola. Y el objetivo es la inteligencia artificial que me gusta usar la que hago yo. Un beso. ;-) Título: Re: Punteros concatenados. Como guardar una direccion de memoria? Publicado por: Eternal Idol en 23 Octubre 2021, 08:06 am No se hacen tareas, lo que yo te mande logra cambiar la direccion a la que apunta el puntero declarado en main desde otra funcion y punto.
|