Difference between revisions of "cpp/utility/program/system"
From cppreference.com
(link to WEXITSTATUS (prompted by http://stackoverflow.com/questions/33310221)) |
(Minor copy-editing) |
||
Line 5: | Line 5: | ||
}} | }} | ||
− | Calls the host environment's command processor ({{tt|/bin/sh}}, {{tt|cmd.exe}}, {{tt|command.com}}) with the parameter {{tt|command}}. Returns an implementation-defined value (usually the value that the invoked program returns). | + | Calls the host environment's command processor (e.g. {{tt|/bin/sh}}, {{tt|cmd.exe}}, {{tt|command.com}}) with the parameter {{tt|command}}. Returns an implementation-defined value (usually the value that the invoked program returns). |
− | If {{tt|command}} is a null pointer, checks if host environment has a command processor and returns nonzero value only if the command processor exists. | + | If {{tt|command}} is a null pointer, checks if host environment has a command processor and returns nonzero value if and only if the command processor exists. |
===Parameters=== | ===Parameters=== | ||
Line 15: | Line 15: | ||
===Return value=== | ===Return value=== | ||
− | Implementation-defined value. If {{tt|command}} is a null pointer, returns nonzero value only if command processor exists. | + | Implementation-defined value. If {{tt|command}} is a null pointer, returns nonzero value if and only if the command processor exists. |
===Notes=== | ===Notes=== |
Revision as of 00:48, 5 July 2017
Defined in header <cstdlib>
|
||
int system( const char* command ); |
||
Calls the host environment's command processor (e.g. /bin/sh
, cmd.exe
, command.com
) 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 host environment has a command processor and returns nonzero value if and only if the command processor exists.
Contents |
Parameters
command | - | character string identifying the command to be run in the 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 nonzero value if and only if the command processor exists.
Notes
On POSIX systems, the return value can be decomposed using WEXITSTATUS and WSTOPSIG
Related POSIX function popen makes the output generated by command
available to the caller.
Example
Run this code
#include <cstdlib> #include <fstream> #include <iostream> int main() { std::system("ls -l >test.txt"); // execute 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
|