Bonjour

Depuis un programme écrit en C, j'appelle des fonctions Fortran. J'ai eu quelques soucis parce que le C passe les paramètres par valeurs tandis que le fortran les attend par adresse. Le problème que j'ai est pour récupérer la valeur retournée par la fonction Fortran.

Voici le code C de ma fonction :
Code C : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
double sortie2;
sortie2 = hspt_ (0.08, 0.08, 1);

Voici le code Fortran :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
     real*8 function hspt (a,b,c) 
      hspt=a+b+c
      return
      end
Normalement, sortie2 devrait valoir 1.16. Mais en sortie j'ai une valeur de type 1073741824.
Est-ce que quelqu'un pourrait m'aider ?
Merci d'avance