appel d'une fonction avec pointeur comme argument
Bonjour,
je suis debutant en C/C++ mais a la lecture de mon cours, je ne comprends pas pourquoi ce code tout simple (surtout ne vous moquez pas , c pour tester) ne fonctionne pas en envoyant l'adresse du pointeur a l'appel :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| # include <iostream>
int main()
{
double val = 2.0 ;
double *valeur ;
void donneusedordre(double *parametre) ;
valeur = &val ;
donneusedordre(&valeur) ;
std::cout << *valeur << "\n";
}
//********************************************
void donneusedordre(double *parametre)
{
*parametre=(*parametre)*2 ;
} |
et qu'il faut envoyer à l'appel de la fonction donneusedordre directement le nom du pointeur "valeur" au lieu de l'adresse :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| # include <iostream>
int main()
{
double val = 2.0 ;
double *valeur ;
void donneusedordre(double *parametre) ;
valeur = &val ;
donneusedordre(valeur) ;
std::cout << *valeur << "\n";
}
//********************************************
void donneusedordre(double *parametre)
{
*parametre=(*parametre)*2 ;
} |
Il doit y avoir quelque chose que j'ai mal compris sur les pointeurs :(