La libreria standard C ha una serie di funzioni e variabili che si collegano un programmatore per il sistema operativo che sviluppa i suoi programmi in Perché C è principalmente un linguaggio di programmazione di sistemi , queste librerie consentono al programmatore di inviare comandi direttamente a un sistema operativo. La funzione di "sistema" , in particolare, permette al programmatore di eseguire comandi specifici del sistema , senza riferimento alla programmazione C da dove la funzione di origine . Il sistema ( ) Funzione  
 Il sistema ( ) funzione rappresenta un comando nella libreria standard C che prende come argomento un array di caratteri costante. In sostanza , l'argomento rappresenta una stringa di tipo C , che a sua volta rappresenta un comando da inviare al sistema operativo . Quindi un programmatore avrebbe usato la funzione chiamata eseguire un elenco di directory su un computer Windows /DOS , come il seguente esempio : 
 
 # include 
 
 int main ( ) { < br 
 int i = sistema > ( "dir" ) ; //"i" riceve il risultato di ritorno del comando 
 Restituisce risultati 
 
 il sistema . () restituisce un valore intero che rappresenta lo stato della chiamata di sistema . Che cosa rappresenta questo stato dipende dalla natura dell'argomento passato a system () . Se il sistema ( ) riceve un puntatore a carattere niente ( NULL ) , allora il sistema ( ) restituirà un intero diverso da zero per segnalare che un processore di comando è disponibile . Se nessun processore è disponibile , la funzione restituisce 0 . Se il sistema () la funzione riceve una stringa effettiva , allora il sistema () invia il comando al sistema, e restituisce un valore di stato di terminazione da quel programma . 
 System ( ) Portabilità < br > 
 
 il risultato del sistema ( ) dipende principalmente dal sistema operativo su cui il programmatore si sviluppa su . Come risultato , il modo in cui il programmatore invoca sistema varia . Un programma che invia il comando di "pausa" per un sistema Windows non riceverà gli stessi risultati se eseguito su un sistema Linux . Sistemi Linux in genere non hanno un comando built-in "pausa" . Pertanto , un programma C scritto per eseguire un " system (" PAUSE " ) " comando non è in realtà l'esecuzione di codice in pausa. 
 Varianti 
 
 Per eseguire un programma in C codice , un programmatore potrebbe invece scegliere di utilizzare la funzione execl ( ) . Mentre ancora dipendente dalla piattaforma , il programmatore può controllare l'esecuzione del programma più da vicino . Inoltre , c'è meno overhead del sistema quando il programma non ha bisogno di effettuare chiamate al sistema, ma esegue i comandi in sé . L'esempio seguente illustra come il programmatore potrebbe chiamare la funzione execl ( ) per elencare una directory su un sistema Linux : 
 
 # include  
  int main ( ) { < br > 
 execl ( " /bin /ls" , " /bin /ls" , "-a" , ( char * ) 0 ) ; 
 
 } 
 < br >