Funkcija atol () v jeziku C ++ interpretira vsebino niza in vrne njegovo ustrezno celoštevilčno vrednost.
atol () Prototip
dolg int atol (const char * str);
Določen je v datoteki glave.
Funkcija atol () za parameter vzame niz, interpretira njegovo vsebino kot integralno število in vrne ustrezno vrednost v long int
.
atol () Parametri
- str - niz, ki ima predstavitev integralnega števila.
atol () Vrnjena vrednost
Funkcija atol () vrne:
long int
vrednost (ki jo pretvorimo od strune).- 0, če ni bilo mogoče izvesti nobene veljavne pretvorbe.
Če je pretvorjena vrednost zunaj obsega, povzroči nedefinirano vedenje.
Primer 1: Kako deluje funkcija 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; )
Ko zaženete program, bo rezultat:
Število v nizu = -114 Število v dolgem Int = -114
Veljavna celoštevilčna vrednost za funkcijo atol () je sestavljena iz neobveznega znaka + ali -, ki mu sledijo številske številke (0-9) . Funkcija atol () ne podpira šestnajstiške, neskončnosti in NaN
izraza kot funkcija atof ().
Na splošno veljaven celoštevilčni argument za funkcijo atol () ima naslednjo obliko:
(presledek) (- | +) (števke)
Funkcija atol () prezre vse vodilne presledke, dokler ne najde primarnega znaka, ki ni presledek.
Nato, začenši s tem znakom, traja čim več znakov, ki tvori veljavno celoštevilsko predstavitev in jih pretvori v dolgo int vrednost. Karkoli je ostalo od niza po zadnjem veljavnem znaku, se prezre in ne vpliva na rezultat.
Primer 2: funkcija atol () s presledki in zaključnimi znaki
#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; )
Ko zaženete program, bo rezultat:
Število v nizu = 13 Število v dolgem Int = 13 Število v nizu = 25 Število v dolgem Int = 25 Število v nizu = 41.90abcd Število v dolgem Int = 41 abcd14 do Dolgo Int = 0