English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In questo tutorial, imparerai a passare array (array unidimensionali e multidimensionali) alle funzioni del linguaggio di programmazione C tramite esempi.
Nel linguaggio di programmazione C, puoi passare l'intero array a una funzione. Prima di comprendere questo, vediamo come passare gli elementi singoli di un array a una funzione.
Passaggio di elementi di array a una funzione è simile aPassaggio di variabili a una funzione.
#include <stdio.h> void display(int age1, int age2); { printf("%d\n", age1); printf("%d\n", age2); } int main() { int ageArray[] = {2, 8, 4, 12}; //Passare il secondo e il terzo elemento a display() display(ageArray[1], ageArray[2]); return 0; }
输出结果
8 4
//Il programma calcola la somma degli elementi dell'array passati alla funzione #include <stdio.h> float calculateSum(float age[]); int main() { float result, age[] = {23.4, 55, 22.6, 3, 40.5, 18}; //L'array age viene passato a calculateSum() result = calculateSum(age); printf("Risultato = %.2f", result); return 0; } float calculateSum(float age[]) { float sum = 0.0; per (int i = 0; i < 6; ++i) sum += age[i]; } return sum; }
输出结果
Risultato = 162.50
Per passare l'intero array a una funzione, passare solo il nome dell'array come parametro.
result = calculateSum(age);
Ma, nota l'uso di [] nella definizione della funzione.
float calculateSum(float age[]) { ... .. }
Questo avvisa il compilatore che stai passando un array uno-dimensionale a questa funzione.
Per passare un array multidimensionale a una funzione, passare solo il nome dell'array alla funzione (simile a un array uno-dimensionale).
#include <stdio.h> void displayNumbers(int num[2][2]); int main() { int num[2][2]; printf("Inserisci 4 numeri:\n"); per (int i = 0; i < 2; ++i) per (int j = 0; j < 2; ++j) scanf("%d", &num[i][j]); //Passare un array multidimensionale alla funzione displayNumbers(num); return 0; } void displayNumbers(int num[2][2]) { printf("Visualizzando:\n"); per (int i = 0; i < 2; ++i) { per (int j = 0; j < 2; ++j) { printf("%d\n", num[i][j]); } } }
输出结果
输入4个数字: 2 3 4 5 Displaying: 2 3 4 5
注意:在C语言编程中,可以将数组传递给函数,但是,不能从函数返回数组。