home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.disi.unige.it
/
2015-02-11.ftp.disi.unige.it.tar
/
ftp.disi.unige.it
/
pub
/
.person
/
CataniaB
/
teach-act
/
esempi
/
Puntatori
/
punta1.c
< prev
next >
Wrap
C/C++ Source or Header
|
1997-04-06
|
876b
|
39 lines
#include <stdio.h>
/* Passaggio dei parametri usando i puntatori: idea uso come
valori degli indirizzi che poi utilizzo per modificare locazioni
di memoria */
void inc(int* p)
/* incrementa di uno il valore "puntato" da p */
{
*p=*p+1; /* oppure (*p)++; */
}
void myscanf(int* x)
/* ecco il perche' di & nella scanf !!! */
{
scanf("%d",x);
}
/* Occhio alla seguente definizione */
void noscanf(int x)
{
scanf("%d",&x); /* non ha side effect sul parametro! */
}
main()
{
int x;
myscanf(&x); /* legge valore V e lo associa ad x */
inc(&x); /* passo a inc l'indirizzo di x!
* (inc incrementa x di 1) */
printf("%d",x); /* stampa V+1 */
noscanf(x); /* passo a scanf1 il "valore" di x! cioe' V+1 */
printf("%d",x); /* stampa il valore di x cioe' V+1 */
}