Fonction de bibliothèque C - strtoul ()

La description

La fonction de bibliothèque C unsigned long int strtoul(const char *str, char **endptr, int base) fonction convertit la partie initiale de la chaîne en str à une valeur int longue non signée selon la donnée base, qui doit être compris entre 2 et 36 inclus, ou être la valeur spéciale 0.

Déclaration

Voici la déclaration de la fonction strtoul ().

unsigned long int strtoul(const char *str, char **endptr, int base)

Paramètres

  • str - Ceci est la chaîne contenant la représentation d'un nombre entier non signé.

  • endptr - Il s'agit de la référence à un objet de type char *, dont la valeur est définie par la fonction sur le caractère suivant de str après la valeur numérique.

  • base - Il s'agit de la base, qui doit être comprise entre 2 et 36 inclus, ou être la valeur spéciale 0.

Valeur de retour

Cette fonction renvoie le nombre entier converti sous la forme d'une valeur int longue. Si aucune conversion valide n'a pu être effectuée, une valeur zéro est renvoyée.

Exemple

L'exemple suivant montre l'utilisation de la fonction strtoul ().

#include <stdio.h>
#include <stdlib.h>

int main () {
   char str[30] = "2030300 This is test";
   char *ptr;
   long ret;

   ret = strtoul(str, &ptr, 10);
   printf("The number(unsigned long integer) is %lu\n", ret);
   printf("String part is |%s|", ptr);

   return(0);
}

Compilons et exécutons le programme ci-dessus qui produira le résultat suivant -

The number(unsigned long integer) is 2030300
String part is | This is test|