Renvoyer un tableau dans une fonction
En C , il est souvent nécessaire de renvoyer des tableaux à partir de fonctions. La question ci-dessous explore ce sujet :
Question :
Considérez un tableau int arr[5] passé à la fonction fillarr(int arr[]).:
int fillarr(int arr[]) { for(...); return arr; }
a) Comment pouvons-nous renvoyer le tableau ?
b) Si nous renvoyons un pointeur, comment pouvons-nous accéder il ?
Réponse :
a) La variable tableau arr peut être traitée comme un pointeur vers le début de son bloc mémoire. La syntaxe suivante :
int fillarr(int arr[])
est équivalente à :
int fillarr(int* arr)
On peut donc renvoyer un pointeur vers le premier élément du tableau :
int* fillarr(int arr[])
b) Pour accéder au pointeur renvoyé, nous pouvons l'utiliser comme un tableau normal dans la fonction appelante :
int y[10]; int *a = fillarr(y); cout << a[0] << endl;
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!