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.90bcd номер в дълъг Int = 41 abcd14 до Long Int = 0

Интересни статии...