x = %d\n",x); *p=3; printf(" Dopo <*p=3> x = %d\n",x); printf("\nEs.2:int x=1,y=2,z[10];p=&x;\n\n"); x=1; printf(" Prima di y = %d\n",y); y=*p; printf(" Dopo y = %d\n\n",y); printf(" Prima di <*p=0> x = %d\n",x); *p=0; printf(" Dopo <*p=0> x = %d\n",x); printf("\n*/\n"); }"> x = %d\n",x); *p=3; printf(" Dopo <*p=3> x = %d\n",x); printf("\nEs.2:int x=1,y=2,z[10];p=&x;\n\n"); x=1; printf(" Prima di y = %d\n",y); y=*p; printf(" Dopo y = %d\n\n",y); printf(" Prima di <*p=0> x = %d\n",x); *p=0; printf(" Dopo <*p=0> x = %d\n",x); printf("\n*/\n"); }">

Presentation is loading. Please wait.

Presentation is loading. Please wait.

Uso dei puntatori.

Similar presentations


Presentation on theme: "Uso dei puntatori."— Presentation transcript:

1 Uso dei puntatori

2 Uso dei puntatori (1/2) #include <stdio.h> main() {
int x, *p, y=2, z[10]; printf("\n/*\n"); printf("\nEs.1: int x,*p; p= &x;\n\n"); p=&x; printf(" Prima di <*p=3> x = %d\n",x); *p=3; printf(" Dopo <*p=3> x = %d\n",x); printf("\nEs.2:int x=1,y=2,z[10];p=&x;\n\n"); x=1; printf(" Prima di <y= *p> y = %d\n",y); y=*p; printf(" Dopo <y= *p> y = %d\n\n",y); printf(" Prima di <*p=0> x = %d\n",x); *p=0; printf(" Dopo <*p=0> x = %d\n",x); printf("\n*/\n"); }

3 Uso dei puntatori (2/2) /* Es.1: int x,*p; p= &x;
Prima di <*p=3> x = 0 Dopo <*p=3> x = 3 Es.2:int x=1,y=2,z[10]; p=&x; Prima di <y= *p> y = 2 Dopo <y= *p> y = 1 Prima di <*p=0> x = 1 Dopo <*p=0> x = 0 */

4 Puntatori e Array (1/2) #include <stdio.h> main() {
int a[10], *pa, i; pa= &a[0]; printf("\n/* Esempi sull'uso dei puntatori\n\n"); for (i=0;i<10;i++) a[i]=i; printf("a[%d]=%d; *(pa+%d)=%d; pa[%d]=%d\n",i,a[i],i,*(pa+i),i,pa[i]); } printf("\n*/\n");

5 Puntatori e Array (2/2) /* Esempi sull'uso dei puntatori
a[0]=0; *(pa+0)=0; pa[0]=0 a[1]=1; *(pa+1)=1; pa[1]=1 a[2]=2; *(pa+2)=2; pa[2]=2 a[3]=3; *(pa+3)=3; pa[3]=3 a[4]=4; *(pa+4)=4; pa[4]=4 a[5]=5; *(pa+5)=5; pa[5]=5 a[6]=6; *(pa+6)=6; pa[6]=6 a[7]=7; *(pa+7)=7; pa[7]=7 a[8]=8; *(pa+8)=8; pa[8]=8 a[9]=9; *(pa+9)=9; pa[9]=9 */

6 VETTORI, PUNTATORI e FUNCTION
PROTOTIPO void leggivet (int[], int); void leggivet (int *, int); DICHIARAZIONE int vet[10], dim; int *vet, dim; vet=(int *)malloc(dim*sizeof(int)); vet=(int *)calloc(dim, sizeof(int)); CHIAMATA leggivet (vet, dim); leggivet (&vet[0], dim); DEFINIZIONE void leggivet (int par[], int ind) void leggivet (int *par, int ind); USO par[j]=temp; *(par+j)=temp;

7 MATRICI, PUNTATORI e FUNCTION (1/2)
PROTOTIPO void leggimat (int[][10], int); void leggimat (int **, int); DICHIARAZIONE int mat[10][10], ri, co; int **mat, ri, co; mat=(int *)malloc(ri*sizeof(int)); mat=(int *)calloc(ri, sizeof(int)); for (i=0;i<ri;++i) mat[i]=(int*)malloc(co*sizeof(int)); mat[i]=(int*)calloc(ri,sizeof(int));

8 MATRICI, PUNTATORI e FUNCTION (2/2)
CHIAMATA leggimat (mat, dim); leggimat (&mat[0], dim); DEFINIZIONE void leggimat (int par[][10], int ind) void leggivet (int **par, int ind); USO par[j][k]=temp; *(*(par+j)+k)=temp;


Download ppt "Uso dei puntatori."

Similar presentations


Ads by Google