system, _wsystem
Esegue un comando.
Importante
Questa API non può essere utilizzata nelle applicazioni eseguite in Windows Runtime.Per ulteriori informazioni, vedere Funzioni CRT non supportate con /ZW.
int system(
const char *command
);
int _wsystem(
const wchar_t *command
);
Parametri
- command
Comando da eseguire.
Valore restituito
Se command è NULL e viene trovato l'interprete dei comandi, restituisce un valore diverso da zero. Se l'interprete dei comandi non viene trovato, restituisce 0 ed imposta errno a ENOENT. Se command non è NULL, system restituisce il valore restituito dall'interprete dei comandi. Restituisce il valore 0 solo se l'interprete dei comandi restituisce il valore 0. Il valore di ritorno -1 indica un errore, e errno viene impostato su uno dei seguenti valori:
E2BIG
L'elenco degli argomenti (che è dipendente dal sistema) è troppo grande.ENOENT
L'interprete dei comandi non viene trovato.ENOEXEC
Il file dell'interprete dei comandi non può essere eseguito perché il formato non è valido.ENOMEM
Memoria insufficiente per eseguire il comando; la memoria disponibile è stata danneggiata; esiste un blocco non valido, che indica che il processo chiamante non è stato allocato correttamente.
Per ulteriori informazioni su questi e altri codici restituiti, vedere _doserrno, errno, _sys_errlist, e _sys_nerr.
Note
La funzione system passa command all'interprete dei comandi, che esegue la stringa come un comando del sistema operativo. system utilizza le variabili di ambiente PATH e COMSPEC per individuare il file CMD.exe dell'interprete dei comandi. Se command è NULL, la funzione verifica solo se l'interprete di comando esiste.
È necessario chiudere o effettuare in modo esplicito lo svuotamento di qualsiasi flusso, utilizzando fflush o _flushall, prima della chiamata alla funzione system.
_wsystem è una versione a caratteri estesi di system; l'argomento command in _wsystem è una stringa di caratteri estesi. Altrimenti queste funzioni si comportano in modo identico.
Mapping di routine di testo generico
Routine TCHAR.H |
_UNICODE & _MBCS non definiti |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_tsystem |
system |
system |
_wsystem |
Requisiti
Routine |
Intestazione obbligatoria |
---|---|
system |
<process.h> o <stdlib.h> |
_wsystem |
<process.h>, <stdlib.h> o <wchar.h> |
Per ulteriori informazioni sulla compatibilità, vedere Compatibilità.
Esempio
In questo esempio viene utilizzata system per scrivere in un file di testo.
// crt_system.c
#include <process.h>
int main( void )
{
system( "type crt_system.txt" );
}
Input: crt_system.txt
Line one.
Line two.
Output
Line one.
Line two.