#include void zeraVet(int *p1, int tam){ int i; for(i = 0; i < tam; i++) p1[i] = 0; } void f1(int *p1, int *p2, int tam){ int i; p1 = p2; for(i = 0; i<5; i++) printf("%d, ", p1[i]); printf("\n"); printf("p1=%p, memoria: %p\n", p1, &p1); printf("p2=%p, memoria: %p\n", p2, &p2); } void f2(int **p1, int *p2, int tam){ int i; *p1 = p2; for(i = 0; i<5; i++) printf("%d, ", (*p1)[i]); printf("\n"); printf("p1=%p, memoria: %p\n", p1, &p1); printf("p2=%p, memoria: %p\n", p2, &p2); } int main(){ int vet1[] = {1, 2, 3, 4, 5}; int *pont1, *pont2, vet2[] = {1,1,1,1,1}; int i; pont1 = vet1; pont2 = vet2; printf("pont1=%p, memoria: %p\n", pont1, &pont1); printf("pont2=%p, memoria: %p\n", pont2, &pont2); zeraVet(pont1, 5); // pont1 = pont2; for(i = 0; i<5; i++) printf("%d, ", pont1[i]); printf("\n\n"); f1(pont1, pont2, 5); for(i = 0; i<5; i++) printf("%d, ", pont1[i]); printf("\n\n"); f2(&pont1, pont2, 5); for(i = 0; i<5; i++) printf("%d, ", pont1[i]); printf("\n"); }