C ++ -atol () - C ++ Standardbibliotek

Funktionen atol () i C ++ tolkar innehållet i en sträng och returnerar motsvarande heltal.

atol () Prototyp

 lång intol (const char * str);

Det definieras i rubrikfilen.

Funktionen atol () tar sträng som parameter, tolkar dess innehåll som ett integrerat tal och returnerar motsvarande värde i long int.

atol () Parametrar

  • str - En sträng som representerar ett integrerat tal.

atol () Returvärde

Funktionen atol () returnerar:

  • ett long intvärde (som konverteras från strängen).
  • 0 om ingen giltig konvertering kunde utföras.

Om det konverterade värdet ligger utanför intervallet orsakar det odefinierat beteende.

Exempel 1: Hur fungerar atol () -funktionen?

 #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 kör programmet blir resultatet:

 Antal i sträng = -114 Antal i långa int = -114

Ett giltigt heltalsvärde för atol () -funktionen består av ett valfritt + eller - tecken följt av numeriska siffror (0-9) . Atol () -funktionen stöder inte hexadecimal, oändlighet och NaNuttryck som atof () -funktionen.

I allmänhet har ett giltigt heltalargument för atol () -funktionen följande form:

 (mellanslag) (- | +) (siffror)

Atol () -funktionen ignorerar alla ledande blankstegstecken tills det primära icke-blankstegstecknet hittas.

Från och med denna karaktär tar det så många tecken som möjligt som bildar en giltig helhetsrepresentation och omvandlar dem till ett långt int-värde. Oavsett vad som är kvar av strängen efter att den sista giltiga karaktären ignoreras och har ingen inverkan på resultatet.

Exempel 2: funktion atol () med mellanslag och efterföljande tecken

 #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 kör programmet blir resultatet:

 Antal i sträng = 13 Antal i långa int = 13 Antal i sträng = 25 Antal i långa int = 25 Antal i sträng = 41,90abcd Antal i långa int = 41 abcd14 till långa int = 0

Intressanta artiklar...