2010-11-01 2 views
1

Je veux exécuter le script cmd dans le programme c donc la fonction SYSTEM (CONST CHAR) le fait mais je veux utiliser cette fonction avec 3 paramètres différents d'écriture une fois que . Quelqu'un peut-il m'aider? Y at-il une fonction de ce genre?quelle fonction ne prend pas de paramètres constants similaires à system (constante char) dans linux

+0

Je pense que vous ne comprenez pas l'objet de paramètres de 'const'. 'const char *' signifie que 'system' ne remplace pas son argument en interne. –

+0

oui, j'ai compris comme c'est CONST, mais je veux que ce ne soit pas const mais juste un (char *) y at-il une fonction qui supporte cette fonction de saisie et fonctions comme system() plz essayer de m'aider – narayanpatra

Répondre

1

Si je deviné juste que vous voulez appeler un système utilisant cmd() comme fonction avec plusieurs arguments, si oui, alors vous pouvez faire à la suite

char cmd[SIZE]; 
snprintf(cmd, <SIZE>, "<cmd> %d %f %c" argument1, argument2, argument3); 
system(cmd); 

vous pouvez également personnaliser le snprintf à la suite vos besoins et vos arguments.

[EDIT] Utilisé snprintf au lieu de sprintf [/ EDIT]

+0

@larsmans , J'ai mis à jour la recommandation pour snprintf au lieu de sprintf. Heureux maintenant? – Himanshu

+1

Downvote levé. –

+0

@larsmans, merci beaucoup. – Himanshu

Questions connexes