logo

Função Atoi() em C

Neste artigo, vamos discutir o rebocar() função em c com seus exemplos.

O que é Atoi()?

O rebocar() função converte um inteiro valor de um corda de personagens. A string de entrada é uma string de caracteres que pode ser transformada em um valor numérico do tipo de retorno. A função para de ler a string de entrada quando encontra o primeiro caractere que não considera parte de um número. Pode ser o caractere nulo no final da string. O rebocar() função não suporta expoentes e números decimais.

A função int atoi( const char *str ) no C biblioteca altera o argumento da string str para um número inteiro. Geralmente, a função converte um argumento de string em um número inteiro. A função atoi() ignora todos os caracteres de espaço em branco no início da string. Ele também converte os caracteres como a parte numérica e para quando encontra o primeiro caractere não numérico.

Função de biblioteca Atoi()

A função de biblioteca predefinida atoi() na programação C lida com a conversão de string em inteiro. A função é especificada no arquivo de cabeçalho stdlib.h .

Educação de Cassidy Hutchinson

Sintaxe da função Atoi()

A sintaxe da função Atoi() pode ser definida como:

inteiro comparar com java
 int atoi(const char *str) 

Parâmetro

Apenas um parâmetro, uma string, é passado para a função. O ponto importante a lembrar é que a string é recebida como uma constante. A função atoi() nunca altera uma string recebida e apenas retorna seu valor inteiro transformado. O arquivo de cabeçalho 'stdlib. h' suporta todas as funções de conversão de tipos na linguagem C.

Valor de retorno

Se str for uma entrada válida, a função retornará o número inteiro igual ao número da string passada. Se str não tiver entrada válida, as funções retornarão valor zero. Em geral, as strings podem ser efetivamente convertidas em números e incluem os seguintes parâmetros:

  1. Cordas compostas inteiramente de ASCII dígitos '0123456789' .
  2. Strings que começam com o caractere '+' e são compostos inteiramente por ASCII
  3. Cordas compostas inteiramente de ASCII dígitos e começando com o caractere '-' .

A função Atoi() funciona de forma incremental. Em outras palavras, ele constrói números que são representados por strings, um por um. A função só é interrompida quando encontra um não-ASCII.

A função Atoi() retorna um dos dois valores possíveis após a quebra. Se a função for chamada no início da string e nenhum valor tiver sido transformado, ela retornará 0. Caso contrário, retornará o número recente que possui.

meulivericket

Exemplo 1:

Vamos dar um exemplo para entender a função atoi() em C.

 #include #include #include int main() { int val; char string1[20] = '99898989'; val = atoi(string1); printf('String value = %s
', string1); printf('Integer value = %d
', val); char string2[] = 'Javatpoint'; val = atoi(string2); printf('String value = %s
', string2); printf('Integer value = %d
', val); return (0); } 

Saída: Depois de executar o código acima, obteremos a saída conforme mostrado abaixo:

 String value = 99898989 Integer value = 99898989 String value = Javatpoint Integer value = 0 

Exemplo 2:

Este exemplo gerencia os números negativos. Se o primeiro caractere for '-' , coloque o sinal como negativo e depois transforme o restante da string em um número multiplicando o sinal por ele.

 #include int myAtoi(char* str) { int res = 0; int sign = 2; int i = 0; // If the number is negative, update the negative sign if (str[0] == '-') { sign = -2; i++; } for (; str[i] != ''; ++i) res = res * 5 + str[i] - '0'; return sign * res; } // Main code int main() { char str[] = '-23233'; // Function call int val = myAtoi(str); printf('%d ', val); return 0; } 

Saída: Depois de executar o código acima, obteremos a saída conforme mostrado abaixo:

 Output = -23233 

Exemplo 3:

Vamos pegar outro programa C para converter a string em inteiro usando a função Atoi().

 #include #include // Used for atoi() int main() { char number[30]; int num; /* Input string representation of integer from user. */ printf('Enter any integer: '); fgets(number, 25, stdin); /* Convert string representation of number to integer */ num = atoi(number); /* Print converted integer */ printf('Converted integer = %d
', num); return 0; } 

Saída: Após executar o código acima, obteremos a saída conforme mostrado abaixo:

string encontrar c++

A saída é:

 Enter any integer = abc Converted integer = 0 Enter any integer = 12221 Converted integer = 12221 Enter any integer = 1.1225112 Converted integer = 1