Bonjour,
est il possible en fortran de recupérer les parametres avec lesquels on a lancé le programme (l'equivalent des argc et argv en C++) ?
j'espere que ma demande est claire
Merci par avance !
Bonjour,
est il possible en fortran de recupérer les parametres avec lesquels on a lancé le programme (l'equivalent des argc et argv en C++) ?
j'espere que ma demande est claire
Merci par avance !
Comment lances-tu ton programme ?
En fortran, tu peux récupérer des paramètres avec read(*,*) (si ces paramètres sont transmis au programme dans un fichier shell par exemple)...
Snoop
hé bien je pensais passer les parametre de la facon suivante :
apparememnt ce n'est pas possible
Code : Sélectionner tout - Visualiser dans une fenêtre à part $> ProgFortran param1 param2 param3
mais ton idée comblerait ce manque :
j'enregistre param1 param2 et param3 dans un fichier, et au lancement de mon programme, je vais lire ce fichier et récupérer les parametre
cela me convient parfaitement
Merci
il est aussi possible de faire un appel à getarg().
Par exemple :
(la subroutine getarg fait partie de la librairie sous g77 ou gfortran. C'est transparent pour le développeur.)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 call getarg(1,param1) ! param1 à 3 de type chaine de caractère call getarg(2,param2) call getarg(3,param3)
Bonjour,
attention, quand même, la norme Fortran ne permet pas de récupérer les paramètres de la ligne de commande. C'est donc dépendant du système et du compilateur (en l'occurence g77 et gfortran dans l'exemple jppoutot). Ce n'est pas donc forcément portable.
À compter de Fortran 2003, les fonctions / subroutines get_command_argument et command_argument_count sont disponibles et standards. Bien qu'il n'y ait pas encore de compilateur F2003 sur le marché, la plupart des compilateurs mis à jour régulièrement les supportent. Advenant que que votre compilateur ne les supporte pas, vous pouvez utiliser le F2KCLI (une recherche rapide sur google avec F2KCLI et command_argument_count retourne plein de résultats...)
Zut, il m'a devancé
Comme je suis en train de travailler sur le Fortran 2003, je viens voir cette fonctionnalité!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager