NOTA: Senza il giusto contesto, l'utilizzo di *name
e **name
è ambigua. può ritratto (a). dereference operatore operator (b) la moltiplicazione
Considerando si sta parlando di uno scenario come
char * name;
char **name;
nel codice,
name
è un puntatore ad un char
.
name
è un puntatore, il puntatore a un char
.
Si prega di non confondersi con "doppio puntatore", che a volte viene utilizzato per denotare il puntatore a un puntatore ma in realtà si suppone significhi un puntatore a una variabile di tipo doppio di dati.
Un visiva sotto
Come sopra, possiamo dire
char value = `c`;
char *p2 = &value; // &value is 8000, so p2 == 8000, &p2 == 5000
char **p1 = &p2; // &p2 == 5000, p1 == 5000
Quindi, p1
qui, è un puntatore puntatore a. Spero che questo chiarisca le cose ora.
fonte
2015-04-17 07:35:06
puntatore al puntatore: http://www.tutorialspoint.com/cprogramming/c_pointer_to_pointer.htm – user4757345
Wow che era veloce! Grazie a tutti :) – MLMH
Dipende completamente dal contesto in cui '* nome' e' ** nome' sono. – juanchopanza