Strtol e Strtoul funções em C

Strtol e Strtoul funções em C

No idioma C, um arquivo de cabeçalho padrão é apresentado como uma "string", chamada string.H Arquivo de cabeçalho. Este arquivo de cabeçalho opera diferentes tipos de strings. Existem diferentes funções padrão de string predefinidas disponíveis neste arquivo de cabeçalho para manipular essas strings.

Há outro arquivo de cabeçalho padrão disponível no idioma C chamado Stdlib.H Arquivo de cabeçalho. Existem duas funções predefinidas padrão disponíveis: STRTOL () e STRTOUL () FUNÇÕES. Através dessas funções, convertemos os diferentes tipos de string para o número inteiro longo e o número inteiro longo não assinado, respectivamente.

Primeiro, veremos as características e implementação da função strtol ().

Características da função strtol ()

Arquivo de cabeçalho: A definição da função strtol () existe em um arquivo de cabeçalho padrão na biblioteca C nomeada em stdlib.H Arquivo de cabeçalho. É uma função predefinida padrão.

Sintaxe:

long strtol (const char * size_str, char ** ptr_str, int bse_n);

Descrição: A função strtol () transforma uma string em um valor inteiro longo. Esta função não é executada quando a função não acessou uma entrada válida. Esta função determina o ponto de terminação em que um valor é atribuído a uma variável. O ptr_str refere -se a essa variável se o valor de ptr_str não for nulo. O parâmetro bse_n reflete o valor base. O valor base é usado como 0 ou 2 a 36. Se o número começar com Ox, então é a base 16. Se começar com um zero, sua base será 8; Outros são decimais na base.

Parâmetros:

size_str: É um ponteiro para uma string que converte a string.

Ptr_str: Refere -se a um ponteiro. Este ponteiro mantém o endereço de um ponteiro de string.

BSE_N: A conversão de números depende da base de um número. O BSE_N armazena este valor.

Retornos: A função strtol () fornece uma saída como um valor, que é um tipo inteiro longo.

Exemplo de programação 1

Aqui, veremos como a função strtol () converte uma string em um valor inteiro longo e a implementação da função strtol ():

#incluir
#incluir
int main ()

char strr [60]; // declarando uma string
char *s;
long V; // mantém o valor inteiro de conversão
printf ("Por favor, insira um valor longo:");
recebe (strr);
v = strtol (strr, & s, 0); // chamando a função strtol () para conversão
printf ("O valor resultante é: %ld, dobrando o valor: %ld \ n", v, v*2);
retornar 0;

Saída

Explicação

Aqui, declaramos uma string chamada strr e atribua alguns valores ao usuário com a ajuda da função gets (). Declaramos uma sequência de ponteiro nomeada *s para apontar a string e um valor inteiro longo.

Chamamos a função strtol () e passamos a string, através do ponteiro dentro do parêntese da função strtol () para converter a string em valor inteiro longo. Agora, imprimimos o valor de V para imprimir a saída desejada.

Exemplo de programação 2

Aqui, veremos outro exemplo da função strtol ().

#incluir
#incluir
int main ()

char strr [50] = "430 eu estou aqui"; // declarando, além de inicializar uma string
char *s;
long V; // mantém o valor inteiro de conversão
v = strtol (strr, & s, 10); // chamando a função strtol () para conversão
printf ("O valor provável é %ld \ n", v);
retornar 0;

Saída

Explicação

Neste exemplo de programação, declaramos uma string chamada strr [] e atribuímos algum valor. Então chamamos a função strtol () e, dentro de seus parênteses, passamos a corda e a corda para o ponteiro como argumentos. Valor Int Long é o retorno desta função como saída.

função strToul ()

Agora, discutiremos as características e a aplicação da função strToul ().

Características da função strtoul ()

Arquivo de cabeçalho: A função strToul () apresenta no stdlib.H Arquivo de cabeçalho.

Sintaxe: não assinado long int strtoul (const char * size_str, char ** ptr_str, int bse_n)

Descrição: Esta função ajuda a fornecer a saída como um cálculo da conversão de qualquer string em um valor que seja um tipo inteiro longo não assinado.

Parâmetros:

size_str: É um ponteiro para a corda.

ptr_str: Refere -se a um ponteiro. Este ponteiro mantém o endereço de um ponteiro de string.

BSE_N: base do número a ser convertido.

Retornos: Retorna o valor inteiro longo.

Exemplo de programação 3

Aqui, veremos um exemplo da função stroul ().

#incluir
#incluir
int main ()

LV longo não assinado; // declarando uma variável de tipo de dados longo.
char szstring [50] = "430 eu estou aqui"; // declarando, além de inicializar uma string
char *pend;
long V; // mantém o valor inteiro de conversão
lv = strtoul (szstring, & pend, 0); // chamando a função strToul () para conversão
printf ("O valor provável é %ld \ n", lv);
retornar 0;

Saída

Explicação

Aqui, declaramos uma string chamada szstring [] e atribuímos alguns valores dentro da string. Agora, chamamos a função strToul () e passamos alguns argumentos como a string, o ponteiro do personagem dentro de seus parênteses para conversão. Esta função retorna o valor inteiro longo como sua saída e mostrando no monitor

Conclusão

Aqui, discutimos as características das funções STRTOL () e STRTOUL (). Essas duas funções nos ajudam a converter a string em valor inteiro longo, respectivamente. Essas funções são extremamente úteis para converter a operação de strings na linguagem C. Essas funções fornecem opções diferentes para o idioma C em operações numéricas.