![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
29/12/2004, 18:22
|
![Avatar de Eternal Idol](http://static.forosdelweb.com/customavatars/avatar65038_2.gif) | | | Fecha de Ingreso: mayo-2004 Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años, 9 meses Puntos: 74 | |
Un puntero no es una copia de una variable, un puntero es una variable de 4 bytes (en Windows y Linux) que guarda una dirección de memoria. Si modificas esa dirección de memoria (*puntero=20) se refleja el cambio en la variable porque previamente le has dado a puntero la dirección de memoria de la variable 'sic' variable.
Un ejemplo muy simple es el uso de memoria dinámica para variables, en este caso cadenas:
char *mensaje = (char*)malloc(1024); //creamos un buffer de 1024 bytes
ZeroMemory(mensaje, 1024); //lo inicializamos a 0
strcpy(mensaje, "hola"); //le copiamos la cadena hola
printf(mensaje); //imprimimos en pantalla la cadena mensaje, pasando la dirección de memoria de mensaje como parámetro
free(mensaje); //liberamos la memoria utilizada
__________________ ¡Peron cumple, Evita dignifica! VIVA PERON CARAJO |