IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

comment faire caculer un programme dans une procedure?


Sujet :

Linux

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Points : 5
    Points
    5
    Par défaut comment faire caculer un programme dans une procedure?
    Bonjour tout le monde,
    voila je suis debutant en programmation sous linux et j'aurais aime savoir si il etait possible de faire appel a un programme dans une procedure.
    Le context est le suivant : j'ai les coordonnees dans l'espace de plusieurs point et j'aimerais les utiliser comme entree pour un programme pour calculer les points manquant. J'ai deja ce programme, c'est Mercury un programme de cristallographie.
    Est-ce possible?
    Si je ne me suis pas bien exprime n'hesitez pas>

  2. #2
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    414
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 414
    Points : 354
    Points
    354
    Par défaut
    oui, c'est tout a fais possible, tu peut utiliser la fonction system() ou les fonction de recouvrement tel que execl()

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Points : 17 923
    Points
    17 923
    Billets dans le blog
    2
    Par défaut
    euh.. Il y a plus simple.. Dans un script "bête" (ksh, csh, bash, ..) :

    ou quelque chose d'équivalent, suivant la spec des paramètres du prog..

    Exemple : un prog acceptant -d repertoire pour être lancé via :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    prog -d /home/mon-repertoire
    dans n'importe quel script...

    Maintenant, si ta "procédure" est en C par exemple, alors oui tu peux appeler via la fonction system..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    system("prog -d /home/mon-repertoire");

  4. #4
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 739
    Points : 31 068
    Points
    31 068
    Billets dans le blog
    1
    Par défaut
    C'est dommage de passer par "system()" ou "execl()" surtout que si j'ai bien compris le post initial, le problème est d'appeler un programme externe (mercury) mais aussi de récupérer son résultat !!!
    Dans ce cas, le plus efficace est de passer par popen()

    Bien sûr tout ça dans le cas où on est en C/C++...

    Citation Envoyé par pimousse280187 Voir le message
    Si je ne me suis pas bien exprime n'hesitez pas>
    Ben faudrait surtout connaitre ton langage de programmation. Car tout le monde t'a répondu comme si t'étais en C/C++ mais si t'es en shell, en perl, en python en ruby la façon de faire ne sera pas la même...

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Bonour,
    Le programme est en C++.
    Quand j'utilise la commande system(), cela me lance le programme (seulement l'interface) mais pas les calculs hors j'aimerai avoir le calcul sans devoir le lancer via l'interface du programme.
    Merci d'avance

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    j'ai oublié de vous remercier pour vos réponses
    sorry

  7. #7
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 739
    Points : 31 068
    Points
    31 068
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par pimousse280187 Voir le message
    Bonour,
    Le programme est en C++.
    Quand j'utilise la commande system(), cela me lance le programme (seulement l'interface) mais pas les calculs hors j'aimerai avoir le calcul sans devoir le lancer via l'interface du programme.
    Merci d'avance
    Tout ce que tu peux faire avec system(), execl() ou popen() c'est faire lancer ton programme via ton code C++ comme si tu l'appelais toi-même.
    Si le programme est prévu avec un moyen de faire le calcul sans l'interface (une option machinchose ou autre) ben tu peux alors lancer ton programme avec l'option en question. Sinon ben non.

Discussions similaires

  1. [Access] Comment faire un moyenne pondérée dans une requete ?
    Par megapacman dans le forum Langage SQL
    Réponses: 3
    Dernier message: 27/01/2007, 10h23
  2. Réponses: 2
    Dernier message: 23/08/2006, 18h20
  3. Réponses: 1
    Dernier message: 03/02/2006, 13h35
  4. [Javascript]Comment faire un retour chariot dans une chaîne
    Par aragorns dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 20/09/2005, 12h24
  5. [CSS] Comment faire apparaitre l'ascenceur dans une <div&
    Par vampyrx dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 08/09/2005, 11h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo