atoll, _atoll_l, _wtoll, _wtoll_l

 

Pour obtenir la dernière documentation sur Visual Studio 2017, consultez Documentation Visual Studio 2017.

Convertit une chaîne en un long long entier.

long long atoll(  
   const char *str   
);  
long long _wtoll(  
   const wchar_t *str   
);  
long long _atoll_l(  
   const char *str,  
   _locale_t locale  
);  
long long _wtoll_l(  
   const wchar_t *str,  
   _locale_t locale  
);  

Paramètres

str
Chaîne à convertir.

locale
Paramètres régionaux à utiliser.

Chaque fonction retourne le long long valeur produite en interprétant les caractères d’entrée en tant que nombre. La valeur de retour pour atoll est égal à 0 si l’entrée ne peut pas être convertie en valeur de ce type.

Dépassement de capacité avec grandes valeurs intégrales positifs, atoll retourne LLONG_MAX, et de dépassement de capacité avec grandes valeurs intégrales négatifs, il renvoie LLONG_MIN.

Dans tous les cas hors limites, errno est défini sur ERANGE. Si le paramètre est passé est NULL, le Gestionnaire de paramètre non valide est appelé, comme décrit dans Validation de paramètre. Si l’exécution est autorisée à se poursuivre, ces fonctions définissent errno à EINVAL et retourne 0.

Ces fonctions convertissent une chaîne de caractères à un long long entier.

La chaîne d’entrée est une séquence de caractères qui peut être interprété comme une valeur numérique du type spécifié. La fonction arrête la lecture de la chaîne d’entrée au premier caractère qu’il ne peut pas reconnaître comme faisant partie d’un nombre. Ce peut être le caractère null ('\0' ou L '\0') qui termine la chaîne.

Le str argument atoll a la forme suivante :

[whitespace] [sign] [digits]  

Un whitespace se compose de caractères espace ou tabulation, qui sont ignorés ; sign est un signe plus (+) ou moins (-) ; et digits sont un ou plusieurs chiffres.

_wtollest identique à atoll , sauf qu’il prend une chaîne de caractères larges en tant que paramètre.

Les versions de ces fonctions qui ont le _l suffixe sont identiques à celles qui n’ont pas, sauf qu’ils utilisent les paramètres régionaux qui lui sont passés au lieu des paramètres régionaux actuels. Pour plus d’informations, consultez Locale.

Mappages de routines de texte générique

Routine Tchar.h_UNICODE et _MBCS non définis_MBCS défini_UNICODE défini
_tstollatollatoll_wtoll
_tstoll_l_atoll_l_atoll_l_wtoll_l
_ttoll_atoll_atoll_wtoll
RoutinesEn-tête requis
atoll, _atoll_l<stdlib.h>
_wtoll, _wtoll_l<stdlib.h> ou <wchar.h>

Ce programme montre comment utiliser le atoll fonctions pour convertir les nombres stockés sous forme de chaînes en valeurs numériques.

// crt_atoll.c  
// Build with: cl /W4 /Tc crt_atoll.c  
// This program shows how to use the atoll   
// functions to convert numbers stored as   
// strings to numeric values.  
#include <stdlib.h>  
#include <stdio.h>  
#include <errno.h>  
  
int main(void)  
{  
    char *str = NULL;  
    long long value = 0;  
  
    // An example of the atoll function  
    // with leading and trailing white spaces.  
    str = "  -27182818284 ";  
    value = atoll(str);  
    printf("Function: atoll(\"%s\") = %lld\n", str, value);  
  
    // Another example of the atoll function   
    // with an arbitrary decimal point.  
    str = "314127.64";  
    value = atoll(str);  
    printf("Function: atoll(\"%s\") = %lld\n", str, value);  
  
    // Another example of the atoll function  
    // with an overflow condition occurring.  
    str = "3336402735171707160320";  
    value = atoll(str);  
    printf("Function: atoll(\"%s\") = %lld\n", str, value);  
    if (errno == ERANGE)  
    {  
       printf("Overflow condition occurred.\n");  
    }  
}  

Function: atoll("  -27182818284 ") = -27182818284  
Function: atoll("314127.64") = 314127  
Function: atoll("3336402735171707160320") = 9223372036854775807  
Overflow condition occurred.  
  

Conversion de données
Prise en charge de virgule flottante
Paramètres régionaux
_ecvt
_fcvt
_gcvt
SetLocale, _wsetlocale
_atodbl, _atodbl_l, _atoldbl, _atoldbl_l, _atoflt, _atoflt_l

Afficher: