Função da biblioteca C - strtoul ()

Descrição

A função da biblioteca C unsigned long int strtoul(const char *str, char **endptr, int base) função converte a parte inicial da string em str para um valor int longo sem sinal de acordo com o dado base, que deve estar entre 2 e 36 inclusive, ou ser o valor especial 0.

Declaração

A seguir está a declaração da função strtoul ().

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

Parâmetros

  • str - Esta é a string que contém a representação de um número inteiro sem sinal.

  • endptr - Esta é a referência a um objeto do tipo char *, cujo valor é definido pela função para o próximo caractere em str após o valor numérico.

  • base - Esta é a base, que deve estar entre 2 e 36 inclusive, ou ser o valor especial 0.

Valor de retorno

Esta função retorna o número integral convertido como um valor inteiro longo. Se nenhuma conversão válida puder ser realizada, um valor zero será retornado.

Exemplo

O exemplo a seguir mostra o uso da função 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);
}

Vamos compilar e executar o programa acima que produzirá o seguinte resultado -

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