Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Convertire una stringa in un integer.
int atoi(
const char *str
);
int _wtoi(
const wchar_t *str
);
int _atoi_l(
const char *str,
_locale_t locale
);
int _wtoi_l(
const wchar_t *str,
_locale_t locale
);
Parametri
str
Stringa da convertire.locale
impostazioni locali da utilizzare.
Valore restituito
ogni funzione restituisce int valore prodotto interpretazione dei caratteri di input come numero.il valore restituito è 0 per atoie _wtoi, se l'input non può essere convertito in un valore di quel tipo.
Nel caso di overflow con grandi valori integrali negativi, LONG_MIN viene restituito.atoi e _wtoi ritorno INT_MAX e INT_MIN in queste condizioni.In tutti i casi esterni nell'intervallo, errno è impostato su ERANGE.Se il parametro in è stato superato NULL, il gestore non valido di parametro viene richiamato, come descritto in Convalida dei parametri.Se l'esecuzione è consentita per continuare, queste funzioni impostate errno in EINVAL e restituiscono 0.
Note
Queste funzioni consentono di convertire una stringa di caratteri a un valore Integer (atoi e _wtoi).La stringa di input è una sequenza di caratteri che possono essere interpretati come valore numerico del tipo specificato.La funzione smette di leggere la stringa di input nel primo carattere che non è in grado di riconoscere come parte di un numero.Questo carattere può essere il carattere null„ \ 0 " (" di \0'or L) che termina la stringa.
str argomento a atoie _wtoi presenta il formato seguente:
[whitespace] [sign] [digits]]
In whitespace include lo spazio o di caratteri di tabulazione, che vengono ignorati; sign è più (+) o meno (-); e digits sono uno o più cifre.
le versioni di queste funzioni con _l il suffisso è identico con la differenza che utilizzano il parametro delle impostazioni locali passato alle impostazioni locali correnti.Per ulteriori informazioni, vedere Impostazioni locali.
Mapping di routine a testo generico
routine di TCHAR.H |
_UNICODE & _MBCS non definiti |
_MBCS definito |
_UNICODE definito |
|---|---|---|---|
_tstoi |
atoi |
atoi |
_wtoi |
_ttoi |
atoi |
atoi |
_wtoi |
Requisiti
routine |
Intestazione di associazione |
|---|---|
atoi |
<definito> |
_atoi_l, _wtoi, _wtoi_l |
<definito> o <wchar.h> |
Esempio
In questo programma come numeri archiviati come stringhe possono essere convertiti in valori numerici utilizzando il atoi funzioni.
// crt_atoi.c
// This program shows how numbers
// stored as strings can be converted to
// numeric values using the atoi functions.
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
int main( void )
{
char *str = NULL;
int value = 0;
// An example of the atoi function.
str = " -2309 ";
value = atoi( str );
printf( "Function: atoi( \"%s\" ) = %d\n", str, value );
// Another example of the atoi function.
str = "31412764";
value = atoi( str );
printf( "Function: atoi( \"%s\" ) = %d\n", str, value );
// Another example of the atoi function
// with an overflow condition occuring.
str = "3336402735171707160320";
value = atoi( str );
printf( "Function: atoi( \"%s\" ) = %d\n", str, value );
if (errno == ERANGE)
{
printf("Overflow condition occurred.\n");
}
}
Equivalente .NET Framework
Vedere anche
Riferimenti
Supporto per le operazioni in virgola mobile
_atodbl, _atodbl_l, _atoldbl, _atoldbl_l, _atoflt_l di _atoflt