Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> C /C + + Programming >> .

Descrizione di C Funzione di sistema

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à

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 ( ) {

execl ( " /bin /ls" , " /bin /ls" , "-a" , ( char * ) 0 ) ;

}


 

Programmazione © www.354353.com