Aplicación que demuestra el uso de punteros para acceso a tablas de enteros, en lenguaje C.
Enlace CodePad
http://codepad.org/TnSV1t0d
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Código Fuente
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#include <stdio.h> #include <stdlib.h> void cambiar (int * dato); int main() { int tabla [10]={33,45,97,49,562,4,8,9,0, 1}; int entero = 567; int * puntero1, *puntero2, *puntero3; puntero1 = &entero; puntero2 = tabla; puntero3 = &tabla[0]; //llamada a funcion pasando como parametro la variable puntero printf("\nEl valor de puntero1 es %d", puntero1); printf("\nEl valor de puntero2 es %d", puntero2); printf("\nEl valor de puntero3 es %d\n", puntero3); printf("\nEl valor de *puntero1 es %d", *puntero1); printf("\nEl valor de *puntero2 es %d", *puntero2); printf("\nEl valor de *puntero3 es %d\n", *puntero3); printf("\nEl valor de &puntero1 es %d", &puntero1); printf("\nEl valor de &puntero2 es %d", &puntero2); printf("\nEl valor de &puntero3 es %d\n", &puntero3); printf("\nEl valor de *puntero1+1 es %d", *puntero1+1); printf("\nEl valor de *puntero2+1 es %d", *puntero2+1); printf("\nEl valor de *(puntero2+1) es %d\n", *(puntero2+1)); printf("\nEl valor de tabla[0] antes de llamar a cambiar es: %d", tabla[0]); printf("\nEl valor de tabla[2] antes de llamar a cambiar es: %d", tabla[2]); printf("\nEl valor de tabla[3] antes de llamar a cambiar es: %d", tabla[3]); cambiar(tabla); printf("\nEl valor de tabla[0] despues de llamar a cambiar es: %d", tabla[0]); printf("\nEl valor de tabla[2] despues de llamar a cambiar es: %d", tabla[2]); printf("\nEl valor de tabla[3] antes de llamar a cambiar es: %d", tabla[3]); return 0; } void cambiar (int * dato) { int i; for (i=0;i<100;i++) { *(dato+i)=100*i; } }
No hay comentarios:
Publicar un comentario