- Για να ορίσουμε ότι μια παράμετρος συνάρτησης είναι πίνακας
γράφουμε τον ορισμό του πίνακα στις παραμέτρους της συνάρτησης.
Παράδειγμα:
/*
* Return the sum of a vector v elements.
*/
static double vector_sum(double v[]) {
int i;
double sum = 0.0;
for (i = 0; i < v.length; i++)
sum = sum + v[i];
return (sum);
}
- Για να περάσουμε έναν πίνακα ως όρισμα σε μια συνάρτηση
γράφουμε απλώς το όνομά του στις παραμέτρους.
Παράδειγμα:
double v[] = new double[100];
/* [...] */
BIO.println("Sum = " + vector_sum(v));
- Όταν περνάει ένας πίνακας ως όρισμα σε συνάρτηση δεν περνάει ένα
αντίγραφο της τιμής του, όπως όταν περνάει μια απλή μεταβλητή,
αλλά μια αναφορά (reference) στον ίδιο τον
πίνακα.
Αλλαγές στα στοιχεία του πίνακα που γίνονται μέσα στη συνάρτηση
αναφέρονται στον πίνακα που πέρασε ως όρισμα.
Ο τρόπος αυτός κλήσης λέγεται
κλήση κατ' αναφορά (call by reference).
Παράδειγμα:
/*
* Set all n elements of vector v to the value d
*/
void vector_setvalue(double v[], double d) {
int i;
for (i = 0; i < v.length; i++)
v[i] = d;
}
public static void main(String args[]) {
double vals[] = new double[50];
/* Zero vals */
vector_setvalue(vals, 0.0);
}