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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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