15. Passaggio di parametri: gli array

Per definire una funzione che riceve come parametro un array, occorre utilizzare una particolare notazione, come illustra il seguente esempio:


#include <stdio.h>

int Somma(int k[])

{

int i, tot=0;

for (i=0; i<100; i++)

tot = tot+k[i];

return tot;

}

int main()

{

int a[100], i, x;

for (i=0;i<100;i++)

a[i]=2*i+1;

x=Somma(a);

printf("La somma di tutti i numeri dell'array vale %d\n", x);

return 0;

}

int Somma(int k[])

Il parametro della funzione presenta una coppia di parentesi quadre senza alcun valore all'interno. Questa notazione consente al compilatore di capire che il parametro è un array. Nel nostro esempio k rappresenta un array di interi.

x=Somma(a);

L invocazione della funzione Somma () richiede che sia passato come parametro un array di interi, nella fattispecie l'array a. Questo passaggio avviene specificando il nome dell'array senza l'aggiunta delle parentesi quadre.