C ++ atol () - C ++ szabványos könyvtár

A C ++ - ban található atol () függvény értelmezi a karakterlánc tartalmát, és visszaadja annak megfelelő egész értéket.

atol () Prototípus

 hosszú int atol (const char * str);

A fejlécfájlban van meghatározva.

Az atol () függvény a karakterláncot veszi paraméterként, tartalmát integrálszámként értelmezi, és a megfelelő értéket adja vissza long int.

atol () Paraméterek

  • str - Karakterlánc, amely integrálszámot képvisel.

atol () Visszatérési érték

Az atol () függvény visszatér:

  • egy long intérték (amelyet a karakterláncból konvertálunk).
  • 0, ha nem lehet érvényes konverziót végrehajtani.

Ha az átalakított érték kívül esik a tartományon, akkor ez meghatározatlan viselkedést okoz.

1. példa: Hogyan működik az atol () függvény?

 #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; ) 

A program futtatásakor a kimenet a következő lesz:

 Szám stringben = -114 Szám hosszú int = -114

Az atol () függvény érvényes egész értéke egy opcionális + vagy - előjelből áll, amelyet számjegyek (0–9) követnek . Az atol () függvény nem támogatja a hexadecimális, végtelen és olyan NaNkifejezést, mint az atof () függvény.

Általában az atol () függvény érvényes egész argumentuma a következő formában van:

 (szóköz) (- | +) (számjegy)

Az atol () függvény mindaddig figyelmen kívül hagyja az összes vezető szóközt, amíg az elsődleges nem fehér szóköz megtalálható.

Ezután, ebből a karakterből kiindulva, a lehető legtöbb karakterre van szükség, amely érvényes egész ábrázolást alkot, és hosszú int értékké alakítja őket. Bármi, ami az utolsó érvényes karakter után marad a karakterláncból, figyelmen kívül marad, és nincs hatása az eredményre.

2. példa: atol () függvény szóközzel és záró karakterekkel

 #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; )

A program futtatásakor a kimenet a következő lesz:

 Szám stringben = 13 szám hosszú int = 13 szám stringben = 25 szám hosszú int = 25 szám stringben = 41,90abcd szám hosszú int = 41 abcd14 - hosszú int = 0

érdekes cikkek...