puntatore C ad un puntatore
Il puntatore è un puntatore a una forma più stadi di indirizzamento indiretto, o è una catena puntatore. Tipicamente, un puntatore contiene l'indirizzo di una variabile. Quando definiamo un puntatore a un puntatore, il primo puntatore contiene l'indirizzo del secondo puntatore, il secondo puntatore contiene la posizione del valore effettivo.
Un puntatore a una variabile puntatore deve essere dichiarato come segue, vale a dire mettendo due asterischi davanti al nome della variabile. Ad esempio, il seguente dichiara un puntatore a un int puntatore puntatori:
int **var;
Quando un bersaglio è un puntatore ad un'altra puntatore indirettamente punti per ottenere questo valore richiede l'uso dell'operatore due asterischi, come illustrato nei seguenti esempi:
#include <stdio.h> int main () { int var; int *ptr; int **pptr; var = 3000; /* 获取 var 的地址 */ ptr = &var; /* 使用运算符 & 获取 ptr 的地址 */ pptr = &ptr; /* 使用 pptr 获取值 */ printf("Value of var = %d\n", var ); printf("Value available at *ptr = %d\n", *ptr ); printf("Value available at **pptr = %d\n", **pptr); return 0; }
Quando il codice di cui sopra è compilato ed eseguito, produce i seguenti risultati:
Value of var = 3000 Value available at *ptr = 3000 Value available at **pptr = 3000