Namespaces
Variants

std::system

Depuis fr.cppreference.net
 
 
Bibliothèque d'utilitaires
Support linguistique
Support des types (types de base, RTTI)
Macros de test de fonctionnalités de bibliothèque (C++20)
Utilitaires de programme
Fonctions variadiques
Support des coroutines (C++20)
Support des contrats (C++26)
Comparaison à trois voies
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Utilitaires généraux
Opérateurs relationnels (déprécié en C++20)
 
 
Défini dans l'en-tête <cstdlib>
int system( const char* command );

Appelle le processeur de commandes de l'environnement hôte (par exemple /bin/sh, cmd.exe) avec le paramètre command. Renvoie une valeur définie par l'implémentation (généralement la valeur que le programme invoqué renvoie).

Si command est un pointeur nul, vérifie si l'environnement hôte possède un processeur de commandes et renvoie une valeur non nulle si et seulement si le processeur de commandes existe.

Paramètres

command - chaîne de caractères identifiant la commande à exécuter dans le processeur de commandes. Si un pointeur nul est donné, l'existence du processeur de commandes est vérifiée

Valeur de retour

Valeur définie par l'implémentation. Si command est un pointeur nul, retourne une valeur non nulle si et seulement si le processeur de commandes existe.

Notes

Sur les systèmes POSIX, la valeur de retour peut être décomposée en utilisant WEXITSTATUS et WSTOPSIG .

La fonction POSIX associée popen rend la sortie générée par command disponible pour l'appelant.

Un vidage explicite de std::cout est également nécessaire avant un appel à std::system , si le processus créé effectue toute opération d'E/S d'écran.

Exemple

#include <cstdlib>
#include <fstream>
#include <iostream>
int main()
{
    std::system("ls -l >test.txt"); // executes the UNIX command "ls -l >test.txt"
    std::cout << std::ifstream("test.txt").rdbuf();
}

Sortie possible :

total 16
-rwxr-xr-x 1 2001 2000 8859 Sep 30 20:52 a.out
-rw-rw-rw- 1 2001 2000  161 Sep 30 20:52 main.cpp
-rw-r--r-- 1 2001 2000    0 Sep 30 20:52 test.txt

Voir aussi

Documentation C pour system