C process control refers to a group of functions in the standard library of the C programming language implementing basic process control operations. The process control operations include actions such as termination of the program with various levels of cleanup, running an external command interpreter or accessing the list of the environment operations.

Overview of functions

The process control functions are defined in the stdlib.h header (cstdlib header in C++).

Function Description Terminating a program abort causes abnormal program termination (without cleaning up) exit causes normal program termination with cleaning up _Exit causes normal program termination without cleaning up (C99) atexit registers a function to be called on exit() invocation quick_exit causes normal program termination without cleaning up, but with IO buffers flushed (C11) at_quick_exit registers a function to be called on quick_exit() invocation Communicating withthe environment getenv accesses the list of the environment variables system calls the host environment's command processor

Example The following is an example of communicating with the system environment in C. #include <stdio.h> #include <stdlib.h>

int main() { char* path = getenv("PATH"); if (!path) { fprintf(stderr, "PATH environment variable not found.\n"); } else { printf("PATH variable: %s\n", path);

printf("Listing current directory contents using system(\"ls\"):\n"); int ret = system("ls");

if (ret == -1) { fprintf(stderr, "system() call failed!");

return 0; }

References

External links