Commande system() en C
Résolu
Bonjour,
J'ai un soucis avec la fonction system qui exécute des commandes comme dans un terminal. Or voila j'aimerais me servir de la commande shutdown en lui donnant en paramètre un temps qui est dans une variable.. Voici mon bout de code :
system("SHUTDOWN -t %d", temps);
et il n'arrive pas à compiler et me donne l'erreur suivante : "too many arguments to function `system' "
voila, si quelqu'un peut m'aider pour régler ce problème ... ++
J'ai un soucis avec la fonction system qui exécute des commandes comme dans un terminal. Or voila j'aimerais me servir de la commande shutdown en lui donnant en paramètre un temps qui est dans une variable.. Voici mon bout de code :
system("SHUTDOWN -t %d", temps);
et il n'arrive pas à compiler et me donne l'erreur suivante : "too many arguments to function `system' "
voila, si quelqu'un peut m'aider pour régler ce problème ... ++
Configuration: Windows XP Firefox 2.0.0.14
4 réponses
-
Bonsoir !!
Merci pour ces infos!! Mais je me suis rendu compte que je faisais n'importe quoi dans mon code. Il suffisait de mettre tout simplement temps à la place %d !!!
Bonne soirée et a ++ -
tu peux le faire en plusieurs etapes en copiant d'abord l'argument dans une chaine puis en utlisant cette chaine dans la fonction system()
char arg_sys[30]; strcpy(arg_sys,"SHUTDOWN -t "); arg_sys[12]=temps; arg_sys[13]='\0'; system(arg_sys);
-
Oui c'est effectivement ce que me dit le compilo...
Lorsque je fais mon programme avec "shutdown -r -t 60" par exemple et ça fonctionne impec. Ce que je voudrais c'est remplacer le 60 par la valeur que contiendrait une variable 'temps'.
Et c'est là que ça bloque .. . . -
tu as trop d'arguments la fonction system() ne prend qu'un seul argument en parametre...