table of contents
std::system(3) | C++ Standard Libary | std::system(3) |
NAME¶
std::system - std::system
Synopsis¶
Defined in header <cstdlib>
int system( const char* command );
Calls the host environment's command processor (e.g. /bin/sh, cmd.exe) with
the
parameter command. Returns an implementation-defined value (usually the value
that
the invoked program returns).
If command is a null pointer, checks if the host environment has a command
processor
and returns a nonzero value if and only if the command processor exists.
Parameters¶
character string identifying the command to be run in the command
command - processor. If a null pointer is given, command processor is checked
for
existence
Return value¶
Implementation-defined value. If command is a null pointer,
returns a nonzero value
if and only if the command processor exists.
Notes¶
On POSIX systems, the return value can be decomposed using WEXITSTATUS and WSTOPSIG.
The related POSIX function popen makes the output generated by command
available to
the caller.
An explicit flush of std::cout is also necessary before a call to
std::system, if
the spawned process performs any screen I/O.
Example¶
// Run this code
#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();
}
Possible output:¶
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
See also¶
C documentation for
system
2024.06.10 | http://cppreference.com |