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

 C++ Discussion :

utiliser la fonction system()


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de emprex
    Homme Profil pro
    auto-entrepreneur
    Inscrit en
    Octobre 2007
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : auto-entrepreneur
    Secteur : Services à domicile

    Informations forums :
    Inscription : Octobre 2007
    Messages : 219
    Par défaut utiliser la fonction system()
    Bonsoir a tous,

    J ai un petit soucis pour utiliser la fonction system();

    premier code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    #include <iostream>
    using namespace std;
    int main(void){
        cout << "test" << endl;
        return 0;
    }
    Que je compile comme ca :
    g++ -Wall -c test.cpp
    g++ test.o -o test

    ensuite je creer le deuxieme code dans le meme repertoire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    #include <cstdlib> // declare "system()"
    using namespace std;
     
    int main(void){
    	system("test");
            return 0;
    }
    que je compile de la meme maniere :
    g++ -Wall -c calltest.cpp
    g++ calltest.o -o calltest

    et la j'obtient le message :

    sh: test: not found
    emprex@emprex-laptop:~/programing/cpp$

    Quel est le probleme ? merci beaucoup pour votre aide

  2. #2
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur informaticien à la retraite
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 3 545
    Par défaut
    Bonjour,

    • cout << "test" << endl; affiche test
    • system("test"); exécute test

    que pensiez-vous que faisait system ?

    faites donc man system pour avoir des informations sur system
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

  3. #3
    Membre éclairé Avatar de emprex
    Homme Profil pro
    auto-entrepreneur
    Inscrit en
    Octobre 2007
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : auto-entrepreneur
    Secteur : Services à domicile

    Informations forums :
    Inscription : Octobre 2007
    Messages : 219
    Par défaut
    Bonjour,

    Et bien system() appelle le programme test et devrait donc l'afficher or lorsque je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    emprex@emprex-laptop:~$ cd programing/cpp/
    emprex@emprex-laptop:~/programing/cpp$ g++ -Wall -c test.cpp
    emprex@emprex-laptop:~/programing/cpp$ g++ test.o -o test
    emprex@emprex-laptop:~/programing/cpp$ g++ -Wall -c calltest.cpp
    emprex@emprex-laptop:~/programing/cpp$ g++ calltest.o -o calltest
    emprex@emprex-laptop:~/programing/cpp$ ./calltest
    emprex@emprex-laptop:~/programing/cpp$ ./test
    test
    emprex@emprex-laptop:~/programing/cpp$ ./calltest
    emprex@emprex-laptop:~/programing/cpp$
    le resultat ne s'affiche pas. Je note cependant que n ai plus le message d'erreur.

  4. #4
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur informaticien à la retraite
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 3 545
    Par défaut
    ok, c'était pour être certains que vous vouliez bien exécuter test

    vous avez l'erreur sh: test: not found parce que la variable d'environement PATH ne contient pas "." (ou ~/programing/cpp) et donc votre commande ne peut être trouvée, c'est à priori la même raison qui fait que vous l'exécutez manuellement par ./test et non simplement par test

    vous risquez cependant un autre problème : test est une commande interne aux shells, pour éviter la confusion vous devriez renommer test en autre chose
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

  5. #5
    Membre éclairé Avatar de emprex
    Homme Profil pro
    auto-entrepreneur
    Inscrit en
    Octobre 2007
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : auto-entrepreneur
    Secteur : Services à domicile

    Informations forums :
    Inscription : Octobre 2007
    Messages : 219
    Par défaut
    Merci beaucoup pour votre reponse. PATH=$PATH:.

  6. #6
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Citation Envoyé par emprex Voir le message
    Merci beaucoup pour votre reponse. PATH=$PATH:.
    Ça, c'est généralement déconseillé. Mais si tu es l'unique propriétaire de ton ordinateur, tu peux sans doute le faire sans céder à la paranoïa.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. Apprendre à utiliser la fonction system
    Par germinolegrand dans le forum C++
    Réponses: 18
    Dernier message: 15/11/2013, 01h55
  2. utilisation de la fonction system
    Par El Leon dans le forum C
    Réponses: 12
    Dernier message: 04/08/2008, 21h26
  3. [Système] Utilisation de la fonction system
    Par ouss dans le forum Langage
    Réponses: 6
    Dernier message: 30/10/2006, 14h16

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