Download - Funzioni

Transcript
Page 1: Funzioni

FUNZIONI

Page 2: Funzioni

Struttura e definizione di una funzione

Le funzioni servono a racchiudere un pezzo di funzionalità del programma,

per poterle richiamare da altri punti del programma quando ne abbiamo

bisogno.

Le funzioni hanno la seguente struttura:

tipo nomefunz(argomenti)

{ istruzioni

}

Il tipo ci dice il valore di ritono della funzione, se non ha valori di ritorno scrivo

«void», se ci sono argomenti passati dal programma chiamante gli scriviamo col

loro tipo nello spazio segnato, se no lasciamo le parentesi vuote.

Page 3: Funzioni

Dichiarazione

La dichiarazione di una funzione o prototipo viene fatta nel main, e consiste

in un’unica istruzione identica alla prima riga della sua definizione, ad

esempio:

int FunzioneProva( int a, int b)

Nella dichiarazione della funzione i nomi degli argomenti non devono per forza

coindere con quelli della definizione, es:

int FunzioneProva(int x, int y)

L’istruzione «return nome;» è un’istruzione di ritorno al programma chiamante;

se la funzione non ha un valore di ritorno si scrive solo «return».

Page 4: Funzioni

Tipi di passaggio

Passaggio per valore: quando il main esegue la chiamata di una funzione, il

programma costruisce la copia di ogni argomento e crea delle variabili locali

nella funzione, se modifichiamo questi valori, le modifiche averrano solo nella

funzione, il main mantiene il suo valore originale.

Passaggio per riferimento: permette alla funzione di cambiare il valore

contenuto nel main, perche passando «&a», quello che in realta passiamo è

l’indirizzo di memoria di a e quindi possono andare a modificare all’interno

della cella.

Page 5: Funzioni

Differenza tra: prototipo, chiamata e

definizione

Il prototipo di una funzione è un operazione obbligatoria perchè è definita

dall’ANSI(American National Standards Institute), risiede in un file di

intestazione, serve per tenere le funzioni più ordinate, viene scritto prima del

main, es:

int potenza(int, int)

La chiamata di funzione è quella che si scrive all’interno del main e, infatti,

richiama la funzione, es:

potenza(x,y)

La definizione è il nome della nostra funzione, che richiameremo in

qualunque parte del programma, es:

int potenza(int base, int n)