Atol () -funksjonen i C ++ tolker innholdet i en streng og returnerer den tilsvarende heltallverdien.
atol () Prototype
lang int-atol (const char * str);
Det er definert i topptekstfilen.
Atol () -funksjonen tar streng som parameter, tolker innholdet som et integrert tall og returnerer tilsvarende verdi i long int
.
atol () Parametere
- str - En streng som representerer et integrert tall.
atol () Returverdi
Atol () -funksjonen returnerer:
- en
long int
verdi (som konverteres fra strengen). - 0 hvis ingen gyldig konvertering kunne utføres.
Hvis den konverterte verdien er utenfor området, forårsaker den udefinert oppførsel.
Eksempel 1: Hvordan fungerer atol () -funksjonen?
#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; )
Når du kjører programmet, vil utdataene være:
Antall i streng = -114 Antall i lang int = -114
En gyldig heltallverdi for atol () -funksjonen består av et valgfritt + eller - tegn etterfulgt av numeriske sifre (0-9) . Atol () -funksjonen støtter ikke heksadesimal, uendelig og NaN
uttrykk som atof () -funksjonen.
Generelt har et gyldig heltallargument for atol () -funksjonen følgende form:
(mellomrom) (- | +) (sifre)
Atol () -funksjonen ignorerer alle de ledende blanktegnene til det primære ikke-hvite mellomromstegnet er funnet.
Fra dette tegnet tar det så mange tegn som mulig som danner en gyldig heltallrepresentasjon og konverterer dem til en lang int-verdi. Uansett hva som er igjen av strengen etter at det siste gyldige tegnet blir ignorert og har ingen innvirkning på resultatet.
Eksempel 2: funksjon atol () med mellomrom og etterfølgende tegn
#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; )
Når du kjører programmet, vil utdataene være:
Antall i streng = 13 Antall i lang int = 13 Antall i streng = 25 Antall i lang int = 25 Antall i streng = 41,90abcd Antall i lang int = 41 abcd14 til Lang int = 0