Indicatori
Un memoria variabile di nella del risiede di una della colomba del sapere di desideriamo del volte. Specifico variabile del valore dell'ha ONU del che del contiene l'indirizzo di una del indicatore di ONU. Indicatore del dichiarare ONU di Nel, dell'indicatore del immediatamente prima del nome di disposto del è di asterisco di ONU.
L'indirizzo della posizione di memoria dove la variabile è immagazzinata può essere trovato disponendo un segno & davanti il nome variabile.
int num; /* Normal integer variable */
int *numPtr; /* Pointer to an integer variable */
Il seguente esempio stampa il valore variabile e l'indirizzo nella memoria di quella variabile.
printf("The value %d is stored at address %X\n",
num, &num);
Per assegnare l'indirizzo della variabile numerica al numPtr dell'indicatore, assegnate l'indirizzo del variabile, numerico, come nell'esempio fornito dopo:
numPtr = #
Per scoprire che cosa è memorizzato all'indirizzo indicato da numPtr, la variabile deve dereferenced. Dereferencing è realizzato con l'asterisco che l'indicatore è stato dichiarato con.
printf("The value %d is stored at address %X\n",
*numPtr, numPtr);
Tutte le variabili in un programma risiedono nella memoria. Le dichiarazione date sotto la richiesta che la riserva del compilatore 4 byte della memoria su un calcolatore dei 32 bit per la variabile di virgola mobile x, allora ha messo il valore 6.5 in esso.
float x;
x = 6.5;
Mentre la posizione di indirizzo nella memoria affatto della variabile è ottenuta disponendo l'operatore & prima del relativo &x di nome quindi è l'indirizzo del X.C permette che noi andiamo una fase più avanti e definiamo una variabile, denominata un indicatore che contiene l'indirizzo di altre variabili. Piuttosto possiamo dire che l'indicatore indica all'altra variabile. Per esempio:
float x;
float* px;
x = 6.5;
px = &x;
definisce il px per essere un indicatore agli oggetti di tipo galleggiante e lo regola uguale all'indirizzo del X. Quindi, il *px si riferisce al valore della x:
|