system () representa un símbolo de la biblioteca estándar de C que toma como argumento una matriz de caracteres constante. En esencia , el argumento representa una cadena de estilo C , que a su vez representa un comando para enviar al sistema operativo . Así que un programador podría utilizar la función de llamar ejecutar una lista de directorios en un ordenador Windows /DOS , como el siguiente ejemplo: # include
int main () { int i = Sistema ( "dir " ) //" i" recibe el resultado devuelto por la orden sistema. () devuelve un valor entero que representa el estado de la llamada al sistema . Lo que esto representa el estado depende de la naturaleza del argumento pasado al sistema de ( ) . Si el sistema ( ) recibe un puntero de caracteres a nada ( NULL ) , entonces el sistema ( ) devolverá un número entero distinto de cero para indicar que un procesador de comandos está disponible . Si no hay ningún procesador está disponible , la función retorna 0 . Si el sistema () función recibe una cadena real , entonces el sistema () envía el comando al sistema y devuelve un valor de estado de finalización de ese programa . el resultado de sistema ( ) depende principalmente en el sistema operativo en el que el programador desarrolla en . Como resultado , la manera en que el programador invoca sistema varía . Un programa que envía el comando "pause " a un sistema Windows no recibirá los mismos resultados si se ejecuta en un sistema Linux. Sistemas Linux no suelen tener un comando "pause " built -in . Por lo tanto , un programa en C escrito para ejecutar un "sistema ( " PAUSE ") " comando en realidad no detener la ejecución de código . Para ejecutar un programa en C código , un programador podría preferir utilizar la función execl (). Si bien depende todavía plataforma , el programador puede controlar la ejecución del programa de un poco más de cerca . Además, hay menos sobrecarga del sistema cuando el programa no tiene que hacer llamadas al sistema, pero ejecuta los comandos en sí . El siguiente ejemplo ilustra cómo el programador puede llamar a la función execl () para listar un directorio en un sistema Linux : # include int main () { execl ("/bin /ls ", "/bin /ls" , "-a" , (char *) 0 ) ; }
Mostrar resultados
System ( ) Portabilidad
Variantes