#include <stdlib.h> // <cstdlib> en C++
int system( const char *command );
Cette fonction permet de lancer l'exécution d'une commande sur le système d'exploitation hôte : un nouveau
processus est lancé pour chaque appel à cette fonction. L'appel à cette fonction bloquera le thread en cours
jusqu'à que la commande lancée finisse. Si la sortie standard de votre programme est redirigée dans sur une console
ou sur un fichier, vous pourrez y aussi retrouver les resultats produits par la commande exécutée par la fonction
system
.
Si tout se passe correctement, cette fonction renvoie, sous forme d'un entier, le code de retour de la commande exécutée. Normalement, une valeur nulle indique que tout c'est bien passé. La valeur -1 indique traditionnellement une erreur non précisée. Tout autre valeur est normalement considérée comme une erreur et documentée par l'aide de la commande considérée.
#include <stdio.h> #include <stdlib.h> int main() { /* Affichage du contenu du répertoire courant sur un poste équipé d'un système d'exploitation Unix */ const char * command = "ls -al"; int cr = system( command ); if ( cr != 0 ) { fprintf( stderr, "Impossible de lancer la commande : %s\n", command ); } return 0; }
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :