Главная    Разработка ПО    функции языка Си

Описание функций языка Си

" A "

abort 

abs, labs, llabs 

acos, acosf, acosl 

acosh, acoshf, acoshl 

alarm 

asin, asinf, asinl 

asinh, asinhf, asinhl 

asctime 

asctime_r 

assert 

atan, atanf,atanl 

atan2, atan2f, atan2l 

atanh, atanhf, atanhl 

atexit 

atoi 

atol 

All | _ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

atol – преобразование строки в число типа long int

Синтаксис:

#include < stdlib.h >
long int atol (const char *str);

Аргументы:

str – указатель на строку, которую необходимо преобразовать в число.

Возвращаемое значение:

Функция возвращает число - результат преобразование строки, если в начале строки содержится число. Если в начале строки стоит символ не являющейся цифрой, то функци возвращает ноль.

Описание:

Функция atol () преобразует строку, на которую указывает аргумент str, в число типа long int. Преобразование заканчивается, когда встречается символ не являющейся цифрой или, когда будет преобразована вся строка. Если первый символ строки не цифра, то функция вернет 0 и завершит работу.

Если число в строке превышает максимальный или минимальный размер числа типа long int, то функция возвращает соответственно максимально или минимально допустимое число для типа long int (2147483647 или -2147483647).

От функции atoi () отличается типом возвращаемого числа и как следствие макимальной длинной преобразуемой строки. Для atoi возвращаемое число имеет тип int, а соответственно разрядность 16 или 32 бита в зависимости от аппаратной платформы, на которой компилируется программа. Для atol возвращаемое число имеет тип long int, который всегда 32 разрядный, не зависимо от архитектуры процессора.

Так, на пример, в результате преобразования строки "217bg12" будет получено число 217, а при преобразовании строки "b237пр" будет получено число 0.

Пример:

В примере преобразуется строка "652.23brrt" в число и результат выводится на консоль.


#include < stdio.h >   //Для printf()
#include < stdlib.h >  //Для atol()

int main (void)
{   
   char *Str = "652.23brrt"; //Строка для преобразования
   long int Num=0;           //Переменная для записи результата
   
   //Преобразование строки в число типа long int
   Num = atol (Str);
   
   //Вывод результата преобразования
   printf ("%ld\n",Num);
   
   //Завершение работы программы
   return 0; 
} 



Результат:

652



Смотри так же:

atoi
atol
atof


Яндекс.Метрика

Рейтинг@Mail.ru