atoi, _atoi_l, _wtoi, _wtoi_l

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

Conversione di dati

Supporto per le operazioni in virgola mobile

Impostazioni locali

_ecvt

_fcvt

_gcvt

setlocale, _wsetlocale

_atodbl, _atodbl_l, _atoldbl, _atoldbl_l, _atoflt_l di _atoflt