Votre question

C++ ==> too many arguments to function `int system(const char*)'

Tags :
  • Time
  • Programmation
Dernière réponse : dans Programmation
10 Avril 2006 18:44:19

Bonjour, je souhaite creer un programme pour limiter l'utilisation du pc par mes enfants, mais la compilation plante à cette ligne:

  1. system ("net user %s %s /time:%s", utilisateur, mdp, horaires);


Erreur ==> 356 C:\Dev-Cpp\include\stdlib.h too many arguments to function `int system(const char*)'

Quelqun aurait il une idée ?

Merci

Autres pages sur : too many arguments function int system const char

a b L Programmation
10 Avril 2006 19:30:01

C'est simple, tu as mis 4 paramètres au lieu d'1. Contrairement à printf(), system() n'a pas un nombre de paramètre illimité.
Donc utilise un sprintf() pour créer la chaîne de caractère finale, et envoie cette chaîne dans system()
10 Avril 2006 20:04:47

Merci CRicky, ca doit donc donner ca ?
  1. sprintf (total,"%d %d /time:%d", utilisateur, mdp, horaires);


Mais j'ai toujour le mème erreur:
356 C:\Dev-Cpp\include\stdlib.h too many arguments to function `int system(const char*)'


J'ai aussi essayé ca mais ca marche pas non plus:

strcat(chaine1, chaine2)
==> 41 C:\Dev-Cpp\include\string.h too many arguments to function `char* strcat(char*, const char*)'
a b L Programmation
10 Avril 2006 20:52:40

c'est parce que tu a laissé le system comme avant.

  1. sprintf (total,"%d %d /time:%d", utilisateur, mdp, horaires);
  2.  
  3. system(total);


EDIT: strcat ne prend que 2 paramètres, il faut faire autant de strcat que de concaténations à faire.
10 Avril 2006 20:57:29

Merci ca marche:
  1. snprintf( cmd, 256, "net user %s %s /time:%s", utilisateur, mdp, horaires);

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS