Modi di chiamare una funzione nel linguaggio di programmazione C
Esistono due diversi metodi per chiamare una funzione nel linguaggio di programmazione C: chiamata per valore e chiamata per riferimento. Nel primo, inviamo una copia della variabile effettiva alla funzione mentre la chiamiamo. Per questo motivo, qualsiasi cambiamento nel valore di questa variabile all'interno del corpo della funzione non si riflette all'esterno. D'altra parte, in quest'ultimo caso, inviamo un riferimento della variabile effettiva alla funzione mentre la chiamiamo, motivo per cui qualsiasi modifica del valore di questa variabile all'interno del corpo della funzione si riflette anche all'esterno. Sarai in grado di capire bene questo concetto passando attraverso i seguenti due esempi.
Esempio n. 1: il metodo Call by Value
Come dice l'intestazione, in questo esempio, chiameremo una funzione per valore. Per questo, abbiamo creato lo script C mostrato nell'immagine qui sotto:
In questo script, abbiamo definito due numeri interi diversi e quindi stampato i loro valori originali sul terminale in modo da poterli facilmente confrontarli con i loro nuovi valori in seguito. Successivamente, abbiamo chiamato la funzione "newValues ()". All'interno di questa funzione, il valore della prima variabile viene incrementato da "2" e il valore della seconda variabile viene incrementato da "4". Quindi, abbiamo stampato i nuovi valori di queste variabili sul terminale. Dopodiché, di nuovo nella funzione "main ()", abbiamo stampato i valori di queste variabili sul terminale per vedere se la modifica dei loro valori viene riflessa al di fuori della funzione "NewValues ()" o no.
Per compilare questo script di esempio, abbiamo usato il seguente comando:
Funzione $ GCC.funzione c -o
Per l'esecuzione di questo script, abbiamo usato il comando mostrato di seguito:
$ ./funzione
Dal momento che abbiamo chiamato la nostra funzione per valore in questo esempio, pertanto, i valori modificati delle nostre variabili sono stati visualizzati solo durante l'esecuzione della funzione e non prima e dopo aver chiamato la funzione. Questo può essere visto nel seguente output:
Esempio n. 2: la chiamata per metodo di riferimento
Ora useremo lo stesso script che abbiamo progettato nel nostro primo esempio. Tuttavia, questa volta, chiameremo la nostra funzione per riferimento. Per questo, puoi dare un'occhiata allo script modificato mostrato nell'immagine qui sotto:
In questa sceneggiatura, invece di passare una copia delle variabili alla funzione "NewValues ()", abbiamo superato i loro riferimenti ad essa. Questa leggera modifica sarà rappresentata nell'output del nostro script modificato.
È possibile verificare dall'output mostrato nella seguente immagine che questa volta, i valori modificati sono stati anche rappresentati al di fuori della funzione "NewValues ()" una volta che è stata chiamata. È così perché la modifica è apportata nelle variabili effettive e non nelle loro copie.
Conclusione
Questo articolo è stato scritto per darti un'idea dei diversi modi in cui puoi chiamare una funzione nel linguaggio di programmazione C. Esistono principalmente due modi per farlo: chiama per valore e chiama per riferimento. Leggendo questo articolo, sarai in grado di imparare entrambi questi metodi insieme al loro significato nel linguaggio di programmazione C.