Partage
  • Partager sur Facebook
  • Partager sur Twitter

system(" ");

que peut on mettre entre les guillemet

Sujet résolu
    30 décembre 2007 à 18:32:57

    salut tous le monde

    petite question
    qu'es ce qu'on peut mettre entre les guillemet de:
    1. system(" ");


    je connait deja 2 réponse:
    1. system("PAUSE");
    2. system("CLS");


    mais c'est juste pour en connaitre un peut plus
    Merci d'avance et bonne année 2008
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      30 décembre 2007 à 18:39:43

      tout ce qui est en dos

      genre ipconfig

      1. void ipconfig(void)
      2. {
      3.      system("CLS");
      4.      char ipconfig[50]="ipconfig";
      5.      system(ipconfig);
      6.      getch();
      7. }
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        30 décembre 2007 à 18:50:20

        Citation : xa4ke

        tout ce qui est en dos


        Faux, tout ce qui est en console, nuance.

        Et sinon, c'est quoi l'intérêt de mettre ipconfig dans une variable alors qu'on peut faire directement system("ipconfig"); ? :-°
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          30 décembre 2007 à 18:54:48

          par ce que j'en ai besoin dans un tableau sinon ça n'y serrait pas :)


          ( autant pour moi tt les trucs de console alors ^^ )
          • Partager sur Facebook
          • Partager sur Twitter
            30 décembre 2007 à 18:56:16

            je le sait que ce sont les truc de console je voudrait juste en connaitre un peut plus
            merci
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              30 décembre 2007 à 18:56:59

              Citation : xa4ke

              par ce que j'en ai besoin dans un tableau sinon ça n'y serrait pas


              Tu peux détailler un peu ? Je comprends pas trop ce que tu veux dire. o_O
              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
              Anonyme
                30 décembre 2007 à 18:59:55

                Bah, en quoi dans ton code exemple tu as besoin d'un tableau. ^^
                • Partager sur Facebook
                • Partager sur Twitter
                  30 décembre 2007 à 19:00:17

                  à mon avis si il l'a mis dans un tableau c'est pour son programme (A MON AVI) mais ceci n'est pas le rapport
                  • Partager sur Facebook
                  • Partager sur Twitter
                  Anonyme
                    30 décembre 2007 à 19:04:28

                    1337833K >> Faux aussi.
                    On peut mettre dans système toute commande éxecutable depuis la console.
                    • Partager sur Facebook
                    • Partager sur Twitter
                    Anonyme
                      30 décembre 2007 à 19:08:20

                      Ben c'est ce que j'ai dis, non ?
                      • Partager sur Facebook
                      • Partager sur Twitter
                      Anonyme
                        30 décembre 2007 à 19:41:01

                        "tout ce qui est en console"
                        J'ai compris que tu parlais seulement des applis en console.
                        Moi je parlais de tout ce qui est lancable depuis la console.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          30 décembre 2007 à 23:28:49

                          Citation : xa4ke

                          tout ce qui est en dos


                          o_O dos ? Sous Windows XP ? Tu veux dire en mode commande ?

                          Demarrer > Exécuter > cmd.exe

                          C:\> Help


                          plus n'importe quel exécutable visible (.exe) y compris un que tu aurais programmé toi même...


                          • Partager sur Facebook
                          • Partager sur Twitter
                          Music only !
                            31 décembre 2007 à 2:01:08

                            Fais quand même attention, c'est pas tip top pour la portabilité
                            • Partager sur Facebook
                            • Partager sur Twitter
                              31 décembre 2007 à 2:32:31

                              disont que si dans les guillemet on ecrit PAUSE :
                              1. system("PAUSE");


                              ca fera la même chose que si on ecrivait PAUSE dans l'invite de commande de DOS :
                              C:\Documents and Settings>PAUSE


                              ca nous affichera la même chose:
                              Appuyez sur une touche pour continuer...

                              (ce n'est qu'un exemple)
                              • Partager sur Facebook
                              • Partager sur Twitter
                                31 décembre 2007 à 3:39:44

                                Salut,
                                system("") fonctionne de la même manière qu'une console.
                                C'est à dire que tout ce que tu peux faire dans cmd.exe à la capacité d'être réaliser via system("").

                                ça comprend:
                                • Les commandes internet (help pour un listage)
                                • Tous les executables (basé sur le format PE)
                                • Toues les associations de fichier faites par windows
                                Maintenant, il faut bien se dire que c'est relativement LENT de passer par system() et que bien souvent une autre alternative existe (et qu'elle est souvent meilleur).
                                Bonne nuit !
                                • Partager sur Facebook
                                • Partager sur Twitter
                                Anonyme
                                  31 décembre 2007 à 9:51:32

                                  "Maintenant, il faut bien se dire que c'est relativement LENT de passer par system() et que bien souvent une autre alternative existe (et qu'elle est souvent meilleur)."
                                  Oui se sont les fonction de la famille des exec*
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    31 décembre 2007 à 11:35:10

                                    Citation : marcbal

                                    ca fera la même chose que si on ecrivait PAUSE dans l'invite de commande de DOS :


                                    Arrêtez de parler de DOS surtout quand les machines Windows actuelles sont des NT...

                                    Que les choses soient claires :

                                    CP/M -> DOS -> Windows 1.x, 2.x, 3.x, 95, 98, ME (shell : command.com)
                                    DEC -> NT -> Windows NT4, NT5 (2000, XP), Vista ... (shell : cmd.exe)

                                    Il n'y a aucun rapport entre ces deux branches (la branche DOS est maintenant arrétée).

                                    Je ne veux plus entendre parler de DOS...
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                    Music only !
                                      1 janvier 2008 à 12:22:36

                                      Citation : Davidbrcz

                                      "Maintenant, il faut bien se dire que c'est relativement LENT de passer par system() et que bien souvent une autre alternative existe (et qu'elle est souvent meilleur)."
                                      Oui se sont les fonction de la famille des exec*



                                      Ah oui?! Lesquelles? (ça m'intéresse)

                                      macbal pour connaître plus de commande en console (Windows ou Unix like) il existe pleins de tutos sur le net (c'est impossible de toutes les apprendres pour les Unix Like tellement il y en a de programmes console).

                                      Kurapix
                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        1 janvier 2008 à 13:14:50

                                        Salut!

                                        Je sais que l'on peut mettre ça aussi :
                                        1. system("print test.txt" );

                                        Pour imprimer un fichier...Mais je n'ai jamais reussi à la faire marcher, le programme ce lance trouve le fichier et met impression en cour...puis 30 secondes aprés le programme s'arrete sans avoir imprimer :(

                                        Donc si tu arrive à la faire marcher tien moi au courant ;)


                                        @++

                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          1 janvier 2008 à 13:25:23

                                          Citation : aurelien36


                                          Je sais que l'on peut mettre ça aussi :

                                          1. system("print test.txt" );


                                          Pour imprimer un fichier...Mais je n'ai jamais reussi à la faire marcher, le programme ce lance trouve le fichier et met impression en cour...puis 30 secondes aprés le programme s'arrete sans avoir imprimer :(


                                          Le problème est de savoir que signifie 'imprimer' pour ta machine ?

                                          la commande print est prévue pour le périphérique 'prn' qui est en réalité 'lpt1' par défaut, c'est à dire le port //. Encore faut-il qu'il existe et que dans la configuration de Windows, on ait fait une 'capture de port lpt1'.

                                          Sur mon portable, il n'y pas de port // et l'impression se fait via le réseau...

                                          Attention a ne pas raisonner en 2008 avec des outils crées dans les années 80...
                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                          Music only !
                                            1 janvier 2008 à 13:34:03

                                            Si tu veux afficher ton fichier à l'écran (et en console miam xD).

                                            Revois le cours de M@teo sur les fichiers ;) .

                                            Kurapix
                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              1 janvier 2008 à 13:59:18

                                              Citation : Kurapix

                                              Citation : Davidbrcz

                                              "Maintenant, il faut bien se dire que c'est relativement LENT de passer par system() et que bien souvent une autre alternative existe (et qu'elle est souvent meilleur)."
                                              Oui se sont les fonction de la famille des exec*



                                              Ah oui?! Lesquelles? (ça m'intéresse)


                                              Je ne sais pas si c'est à ça que pensait sloshy, mais d'après moi la meilleure alternative consiste à ne pas faire appel du tout à un programme externe. La plupart du temps, on pourra obtenir l'effet recherché directement dans le code du programme, éventuellement avec l'aide d'une bibliothèque.

                                              Sinon, si le recours à un programme externe est indispensable, sous les systèmes POSIX on peut utiliser le couple de fonction fork (2)/exec (2) (cf. man pour plus de détails).

                                              Attention : les fonctions exec* ont pour effet de remplacer le processus courant (celui qui appelle exec) par le nouveau processus, donc ce n'est en aucun cas équivalent à system (3) (qui elle lance un nouveau processus). C'est la raison pour laquelle un appel à exec est généralement précédé de fork, afin de créer un second processus qui pourra être remplacé par le programme à exécuter sans terminer le premier.

                                              Attention (2) : si les fonctions exec* existent dans la bibliothèque C de Visual Studio, il semble que ce ne soit pas le cas de fork. Si la portabilité est requise, priviliégiez malgré tout system, qui a l'avantage de faire partie de la bibliothèque C standard.
                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                1 janvier 2008 à 14:04:57

                                                Citation : gouttegd

                                                Sinon, si le recours à un programme externe est indispensable, sous les systèmes POSIX on peut utiliser le couple de fonction fork (2)/exec (2) (cf. man pour plus de détails).

                                                Ce qui, sous Unixoïde, revient exactement à system()).
                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                Music only !
                                                  1 janvier 2008 à 15:04:00

                                                  Citation : -ed-

                                                  Le problème est de savoir que signifie 'imprimer' pour ta machine ?

                                                  la commande print est prévue pour le périphérique 'prn' qui est en réalité 'lpt1' par défaut, c'est à dire le port //. Encore faut-il qu'il existe et que dans la configuration de Windows, on ait fait une 'capture de port lpt1'.

                                                  Sur mon portable, il n'y pas de port // et l'impression se fait via le réseau...

                                                  Attention a ne pas raisonner en 2008 avec des outils crées dans les années 80...



                                                  Oui, c'est ce que je pensais...

                                                  Merci pour ces infos supplémentaire!

                                                  @+++

                                                  PS = Si quelqu'un c'est comment imprimer en C, qu'il me fasse signe :p
                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    1 janvier 2008 à 15:12:05

                                                    Citation : aurelien36

                                                    Si quelqu'un c'est comment imprimer en C, qu'il me fasse signe :p


                                                    Tout ce qu'on sait faire en C standard, c'est envoyer des octets dans un flux ouvert en écriture.

                                                    Définis 'imprimer'. (machine, système, connexion, imprimante)
                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                    Music only !
                                                      1 janvier 2008 à 17:37:19

                                                      Bonjour,
                                                      system("") fait appel à un autre programe, hors les programes de base de windows sont réalisés avec l'API de windows.
                                                      Autant réutiliser les APIs que le programme, c'est bien mieu conçu, on gère mieu les informations et c'est 100 fois plus rapide.
                                                      Pour imprimer en C, sous windows utilise les APIs c'est prévu pour, sous unice, ouvre un flux sur le fichier imprimante et envoie lui les données, je pense d'aileur avoir répondu à ton poste sur le sujet.
                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        1 janvier 2008 à 21:35:39

                                                        Citation : sloshy

                                                        Bonjour,
                                                        system("") fait appel à un autre programe, hors les programes de base de windows sont réalisés avec l'API de windows.
                                                        Autant réutiliser les APIs que le programme, c'est bien mieu conçu, on gère mieu les informations et c'est 100 fois plus rapide.
                                                        Pour imprimer en C, sous windows utilise les APIs c'est prévu pour, sous unice, ouvre un flux sur le fichier imprimante et envoie lui les données, je pense d'aileur avoir répondu à ton poste sur le sujet.



                                                        Sauf que réaliser un programme portable en utilisant les fonctions system, c'est à la portée de presque tout le monde une fois qu'on a la méthode. Avec l'API Windows, je ne vois pas bien comment tu ferais quelquechose de portable, à moins de vraiment développer deux trucs parallèles pour les unixoides et les windows...
                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                          1 janvier 2008 à 23:48:35

                                                          une app portable avec system('"")?
                                                          heuu il y a pas comme un problème là?
                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                            1 janvier 2008 à 23:52:16

                                                            Je ne connais pas bien la fonction system() mais si elle fait appele au API système, donc WIN32 sur windows et X11 sur Linux alors c'est portable ?
                                                            • Partager sur Facebook
                                                            • Partager sur Twitter

                                                            system(" ");

                                                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                            • Editeur
                                                            • Markdown