Comment utiliser la fonction système et y ajouter des options

Résolu/Fermé
glennog
Messages postés
293
Date d'inscription
jeudi 3 janvier 2013
Statut
Membre
Dernière intervention
19 novembre 2013
- Modifié par glennog le 18/02/2013 à 22:15
fiddy
Messages postés
11067
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
- 19 févr. 2013 à 21:56
Bonjour,


j'aimerais savoir comment envoyer des paramètres à une commande dos , quand j'utilise la syntaxe system() , merci
exemple , md chemin
merci de votre attention


6 réponses

armasousou
Messages postés
1270
Date d'inscription
dimanche 16 août 2009
Statut
Membre
Dernière intervention
30 décembre 2016
81
18 févr. 2013 à 23:17
Utilise execv ou execl (tape man exec pour plus d'info).
0
glennog
Messages postés
293
Date d'inscription
jeudi 3 janvier 2013
Statut
Membre
Dernière intervention
19 novembre 2013
4
Modifié par glennog le 18/02/2013 à 23:20
je suis sous windows 7 ( pas linux) du coup exec et autres ne marchent pas
0
fiddy
Messages postés
11067
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 804
19 févr. 2013 à 07:23
Faut former tes chaines avec sprintf et envoyer le tout dans system ()
Maid vaut mieux utiliser les fonctions standards voire posix ou à défaut les api. System () est à éviter.
0
glennog
Messages postés
293
Date d'inscription
jeudi 3 janvier 2013
Statut
Membre
Dernière intervention
19 novembre 2013
4
19 févr. 2013 à 10:29
Ok merci l'ami , je vais regarder la documentation de cette fonction car je ne l'ai jamais utilisé.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
armasousou
Messages postés
1270
Date d'inscription
dimanche 16 août 2009
Statut
Membre
Dernière intervention
30 décembre 2016
81
19 févr. 2013 à 21:50
Normalement, le C est portable, dans les biblio standard, tu dois avoir une fonction execv/l pour linux comme pour windows ...
0
fiddy
Messages postés
11067
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 804
19 févr. 2013 à 21:56
armasousou,
dans les biblio standard, tu dois avoir une fonction execv/l pour linux comme pour windows ...
1/ Ce n'est pas parce qu'une fonction est dans un header portable qu'elle est portable. C'est nécessaire mais pas suffisant.
2/ execv se trouve dans unistd.h qui est posix mais non ISO.
3/ Je vois pas trop le rapport entre execv et sa demande. Dans ce cas system() est plus adéquat (même si ça fait mal de le dire).
0