Programmation en C++ – Passer un pointeur en paramètre d’une fonction
C++ vous permet de passer un pointeur en paramètre d’une fonction. Pour ce faire, il suffit de déclarer le paramètre de la fonction comme un type de pointeur.
[wx_adsense]
En suivant un exemple simple où nous passons un pointeur long non signé (long int) à une fonction et changeons la valeur à l’intérieur de la fonction qui modifie la valeur en retour dans la fonction appelante:
#include <iostream>
#include <ctime>
using namespace std;
void getSeconds(unsigned long *p);
void getSeconds(unsigned long *p) {
// obtient le nombre de secondes actuel
*p = time( NULL );
return;
}
int main () {
unsigned long s;
getSeconds( &s );
// Afficher la valeur actuel
cout << "Nombre de secondes :" << s << endl;
return 0;
}
La sortie :
Nombre de secondes :1487895101
La fonction qui peut accepter un pointeur, peut également accepter un tableau comme indiqué dans l’exemple suivant:
#include <iostream>
using namespace std;
// déclaration de la fonction:
double getMoyenne(int *tab, int taille);
int main () {
// un tableau de type int avec 6 éléments.
int solde[6] = {5897, 1, 87, 14, 80, 89};
double moy ;
// passer le pointeur au tableau comme argument.
moy = getMoyenne( solde, 6 ) ;
// Affichage de la valeur renvoyée
cout << "La valeur moyenne est: " << moy << endl;
return 0;
}
double getMoyenne(int *tab, int taille) {
int i, somme = 0;
double moy ;
for (i = 0; i < taille; ++i) {
somme += tab[i];
}
moy = double(somme ) / taille;
return moy ;
}
La sortie :
La valeur moyenne est: 1028
[wx_amazon]
