Zadatak iz skripte:
[quote]Zadatak 10.2.3. Napišite funkciju koja preko variajbilnog parametra poništava pokazivač na cijeli broj, tj. postavlja ga na vrijednost NULL.[/quote]
Kao rješenje je dana funkcija
[code:1]void nullify(int **x)
{
*x=NULL;
}[/code:1]
Ali kada ju implementiram u ovaj code:
[code:1]#include<stdio.h>
void nullify(int **x)
{
*x=NULL;
}
int main(void)
{
int x=1,*p,**n;
p=&x;
n=&p;
printf("%d, %d, %d\n",p,*n,**n);
nullify(*n);
printf("%d, %d, %d",p,*n,**n);
return 0;
}
[/code:1]
Ono što ja mislim da bi ovaj program trebao raditi je da mi ispiše sljedeće:
[code:1]adresu od x, adresu od x, vrijednost od x
adresu od x, 0, vrijednost na adresi 0[/code:1]
ali zapravo mi ispiše:
[code:1]adresu od x, adresu od x, vrijednost od x
adresu od x, adresu od x, 0[/code:1]
Zadatak iz skripte:
Citat: | Zadatak 10.2.3. Napišite funkciju koja preko variajbilnog parametra poništava pokazivač na cijeli broj, tj. postavlja ga na vrijednost NULL. |
Kao rješenje je dana funkcija
Kod: | void nullify(int **x)
{
*x=NULL;
} |
Ali kada ju implementiram u ovaj code:
Kod: | #include<stdio.h>
void nullify(int **x)
{
*x=NULL;
}
int main(void)
{
int x=1,*p,**n;
p=&x;
n=&p;
printf("%d, %d, %d\n",p,*n,**n);
nullify(*n);
printf("%d, %d, %d",p,*n,**n);
return 0;
}
|
Ono što ja mislim da bi ovaj program trebao raditi je da mi ispiše sljedeće:
Kod: | adresu od x, adresu od x, vrijednost od x
adresu od x, 0, vrijednost na adresi 0 |
ali zapravo mi ispiše:
Kod: | adresu od x, adresu od x, vrijednost od x
adresu od x, adresu od x, 0 |
|