Partager via


_atoi64, _atoi64_l, _wtoi64, _wtoi64_l

Convertit une chaîne en un entier 64 bits.

__int64 _atoi64(
   const char *str 
);
__int64 _wtoi64(
   const wchar_t *str 
);
__int64 _atoi64_l(
   const char *str,
   _locale_t locale
);
__int64 _wtoi64_l(
   const wchar_t *str,
   _locale_t locale
);

Paramètres

  • str
    chaîne à convertir.

  • locale
    Paramètres régionaux à utiliser.

Valeur de retour

Chaque fonction retourne la valeur d' __int64 produite en interprétant les caractères d'entrée comme nombre.La valeur de retour est 0 pour _atoi64 si l'entrée ne peut pas être convertie en une valeur de ce type.

Dans le cas de dépassement de capacité avec les grandes valeurs intégrales positives, _atoi64 retourne I64_MAX et I64_MIN dans le cas de dépassement de capacité avec les grandes valeurs intégrales négatives.

Dans tous les cas hors limites, errno est défini à ERANGE.Si le paramètre passé est NULL, le gestionnaire de paramètre non valide est appelé, comme décrit dans Validation des paramètres.Si est autorisé à l'exécution de se poursuivre, ces errno défini par fonctions à EINVAL et à retourner 0.

Notes

Ces fonctions et convertissent une chaîne de caractères à une valeur entière 64 bits.

La chaîne d'entrée est une séquence de caractères qui peuvent être interprètes comme valeur numérique du type spécifié.La fonction arrête de lire la chaîne d'entrée au premier caractère qu'il ne peut pas reconnaître dans le cadre d'un nombre.Ce caractère peut être le caractère Null (" » de \0'or L \ 0 ') arrêt de la chaîne.

L'argument d' str à _atoi64 a la forme suivante :

[whitespace] [sign] [digits]]

whitespace se compose d'espaces ou des tabulations, qui sont ignorés ; sign est plus (+) ou moins (-) ; et digits sont un ou plusieurs chiffres.

_wtoi64 identique à _atoi64 mais il prend une chaîne à caractères larges comme paramètre.

Les versions de ces fonctions par le suffixe d' _l sont identiques mais elles utilisent le paramètre de paramètres régionaux passé au lieu des paramètres régionaux.Pour plus d'informations, consultez Paramètres régionaux.

mappages de routines de texte générique

routine de Tchar.h

_UNICODE et _MBCS non définis

_MBCS défini

_UNICODE défini

_tstoi64

_atoi64

_atoi64

_wtoi64

_ttoi64

_atoi64

_atoi64

_wtoi64

Configuration requise

routines

en-tête requis

_atoi64, _atoi64_l

<stdlib.h>

_wtoi64, _wtoi64_l

<stdlib.h> ou <wchar.h>

Exemple

Ce programme montre comment les nombres stockées sous forme de chaînes peuvent être convertis aux valeurs numériques à l'aide de les fonctions d' _atoi64 .

// crt_atoi64.c
// This program shows how numbers stored as
// strings can be converted to numeric values
// using the _atoi64 functions.
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>

int main( void )
{
    char    *str = NULL;
    __int64 value = 0;

    // An example of the _atoi64 function
    // with leading and trailing white spaces.
    str = "  -2309 ";
    value = _atoi64( str );
    printf( "Function: _atoi64( \"%s\" ) = %d\n", str, value );

    // Another example of the _atoi64 function 
    // with an arbitrary decimal point.
    str = "314127.64";
    value = _atoi64( str );
    printf( "Function: _atoi64( \"%s\" ) = %d\n", str, value );

    // Another example of the _atoi64 function
    // with an overflow condition occurring.
    str = "3336402735171707160320";
    value = _atoi64( str );
    printf( "Function: _atoi64( \"%s\" ) = %d\n", str, value );
    if (errno == ERANGE)
    {
       printf("Overflow condition occurred.\n");
    }
}
  

Équivalent .NET Framework

Voir aussi

Référence

Conversion de données

Support à virgule flottante

Paramètres régionaux

_ecvt

_fcvt

_gcvt

setlocale, _wsetlocale

_atodbl, _atodbl_l, _atoldbl, _atoldbl_l, _atoflt_l de _atoflt