C ++ atol () - Стандартна бібліотека C ++

Функція atol () в C ++ інтерпретує вміст рядка і повертає відповідне ціле значення.

atol () Прототип

 long int atol (const char * str);

Це визначається у файлі заголовка.

Функція atol () приймає рядок як параметр, інтерпретує його вміст як ціле число і повертає відповідне значення в long int.

atol () Параметри

  • str - рядок, що представляє ціле число.

atol () Повернене значення

Функція atol () повертає:

  • long intзначення (яке перетворюється з рядка).
  • 0, якщо не вдалося виконати дійсне перетворення.

Якщо перетворене значення виходить за межі діапазону, це спричиняє невизначену поведінку.

Приклад 1: Як працює функція atol ()?

 #include #include using namespace std; int main() ( char s() = "-114"; double number; cout << "Number in String = " << s << endl; number = atol(s); cout << "Number in Long Int = " << number; return 0; ) 

Коли ви запускаєте програму, результат буде:

 Число в рядку = -114 Кількість у довгому Int = -114

Дійсне ціле значення для функції atol () складається з необов’язкового знака + або -, за яким слідують цифрові цифри (0-9) . Функція atol () не підтримує шістнадцяткову систему, нескінченність та NaNвираз, як функція atof ().

Загалом, допустимий цілочисельний аргумент для функції atol () має такий вигляд:

 (пробіли) (- | +) (цифри)

Функція atol () ігнорує всі провідні пробіли, поки не буде знайдено основний непробіл.

Потім, починаючи з цього символу, потрібно якомога більше символів, які формують дійсне цілочисельне подання і перетворюють їх у довге значення int. Все, що залишилось від рядка після останнього дійсного символу, ігнорується і не впливає на результат.

Приклад 2: функція atol () з пробілами та кінцевими символами

 #include #include using namespace std; int main() ( cout << "Number in String = " << " 13" << endl; cout << "Number in Long Int = " << atol(" 13") << endl << endl; cout << "Number in String = " << " 25 " << endl; cout << "Number in Long Int = " << atol(" 25 ") << endl << endl; cout << "Number in String = " << "41.90abcd" << endl; cout << "Number in Long Int = " << atol("41.90abcd") << endl << endl; // Returns 0 because of invalid conversion cout << "abcd14" << " to Long Int = " << atol("abcd14") << endl; return 0; )

Коли ви запускаєте програму, результат буде:

 Число в рядку = 13 число в довгому Int = 13 число в рядку = 25 число в довгому Int = 25 Число в рядку = 41.90abcd Номер у довгому Int = 41 abcd14 до Long Int = 0

Цікаві статті...