Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - A cosa serve l'asterisco nella dichiarazione di una funzione?
Forum - C/C++ - A cosa serve l'asterisco nella dichiarazione di una funzione?

Avatar
Sgala (Normal User)
Newbie


Messaggi: 1
Iscritto: 28/10/2008

Segnala al moderatore
Postato alle 12:39
Martedì, 28/10/2008
Salve a tutti, ho un piccolo enigma:
Mi sapreste spiegare a cosaa serve l'asterisco nella seguente funzione:

void pippo (int alfa, int beta, int * gamma);

E quali effetti potrebbe avere sul risultato inserire o meno l'asterisco?

Grazie in anticipo!

PM Quote
Avatar
gioser (Normal User)
Pro


Messaggi: 111
Iscritto: 03/10/2008

Segnala al moderatore
Postato alle 13:54
Martedì, 28/10/2008
Testo quotato

Postato originariamente da Sgala:
void pippo (int alfa, int beta, int * gamma);



l'asterisco in questo caso dichiara un parametro di tipo puntatore a int

I puntatori in C sono un argomento molto importante e anche piuttosto vasto.

detto in moaniera semplice e concisa, un puntatore a int è una variabile che contiene l'indirizzo di una variabile che contiene un intero.

Con le fuzioni, i puntatori servono principalmente come parametri di uscita.

esempio:

Codice sorgente - presumibilmente C/C++

  1. int n = 5;
  2. int *p;
  3.  
  4. /* prendo l'indirizzo di n e lo assegno a p */
  5. p = &n;
  6. /* assegno un valore a n tramite il puntatore p */
  7. *p = 10;
  8. /* a questo punto n vale 10 */
  9. printf("n=%d\n", n);
  10. /* stampo il valore di n tramite il puntatore p */
  11. printf("*p=%d\n", *p);



Ciao :)

PM Quote