logo

Функция Atoi() в C

В тази статия ще обсъдим теглене () функция в c с техните примери.

Какво е Atoi()?

The теглене () функция преобразува an цяло число стойност от a низ от знаци. Входящият низ е символен низ, който може да се превърне в числова стойност от тип връщане. Функцията спира да чете входния низ, когато срещне първия знак, който не счита за част от число. Може да е нулевият знак в края на низа. The теглене () функцията не поддържа експоненти и десетични числа.

Функцията int atoi( const char *str ) в ° С библиотека променя низовия аргумент str на цяло число. Като цяло функцията преобразува низов аргумент в цяло число. Функцията atoi() пропуска всички бели интервали в началото на низа. Той също така преобразува знаците като числова част и спира, когато открие първия знак, който не е число.

Функция на библиотеката Atoi().

Предварително дефинираната библиотечна функция atoi() в програмирането на C обработва преобразуването на низ в цяло число. Функцията е посочена в заглавния файл stdlib.h .

слънчев деол възраст

Синтаксис на функцията Atoi().

Синтаксисът на функцията Atoi() може да се дефинира като:

 int atoi(const char *str) 

Параметър

Само един параметър, низ, се предава на функцията. Важното е да запомните, че низът се получава като константа. Функцията atoi() никога не променя получен низ и връща само неговата трансформирана целочислена стойност. Заглавният файл 'stdlib.h' поддържа всички функции за преобразуване на типове в езика C.

преименуване на директория

Върната стойност

Ако str е валиден вход, функцията връща цяло число, равно на номера на подадения низ. Ако str няма валиден вход, функциите връщат нулева стойност. Като цяло, низовете могат ефективно да се преобразуват в числа, като включват следните параметри:

  1. Струни, съставени изцяло от ASCII цифри '0123456789' .
  2. Низове, които започват със знака '+' и са съставени изцяло от ASCII
  3. Струни, съставени изцяло от ASCII цифри и започващи със знака '-' .

Функцията Atoi() работи постепенно. С други думи, той конструира числа, които са представени от низове едно по едно. Функцията прекъсва само когато срещне не-ASCII.

Функцията Atoi() връща една от двете възможни стойности след прекъсване. Ако функцията се извика в началото на низа и няма преобразувани стойности, тя връща 0. В противен случай ще върне последното число, което има.

Пример 1:

Нека вземем пример, за да разберем функцията atoi() в 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); } 

Изход: След като изпълним този горен код, ще получим резултата, както е показано по-долу:

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

Пример 2:

Този пример управлява отрицателните числа. Ако първият знак е '-' , поставете знака като отрицателен и след това трансформирайте остатъка от низа в число, като умножите знака по него.

конвертиране на int в низ java
 #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; } 

Изход: След като изпълним този горен код, ще получим резултата, както е показано по-долу:

 Output = -23233 

Пример 3:

Нека вземем друга C програма, за да преобразуваме низа в цяло число с помощта на функцията 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; } 

Изход: След като изпълним горния код, ще получим изхода, както е показано по-долу:

Резултатът е:

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