C ++ atol () - Biblioteca standard C ++

Funcția atol () din C ++ interpretează conținutul unui șir și returnează valoarea sa corespunzătoare în întregime.

atol () Prototip

 long int atol (const char * str);

Este definit în fișierul antet.

Funcția atol () ia șir ca parametru, interpretează conținutul său ca un număr integral și returnează valoarea corespunzătoare în long int.

atol () Parametri

  • str - Un șir având reprezentarea unui număr întreg.

atol () Valoare returnată

Funcția atol () returnează:

  • o long intvaloare (care este convertită din șir).
  • 0 dacă nu s-a putut efectua o conversie validă.

Dacă valoarea convertită este în afara intervalului, aceasta provoacă un comportament nedefinit.

Exemplul 1: Cum funcționează funcția 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; ) 

Când rulați programul, ieșirea va fi:

 Număr în șir = -114 Număr în lung Int = -114

O valoare întreagă validă pentru funcția atol () constă dintr-un semn opțional + sau - urmat de cifre numerice (0-9) . Funcția atol () nu acceptă funcția hexadecimală, infinită și NaNexpresie ca funcția atof ().

În general, un argument întreg valid pentru funcția atol () are următoarea formă:

 (spațiu alb) (- | +) (cifre)

Funcția atol () ignoră toate caracterele de spațiu alb principal până când se găsește caracterul principal non-spațiu alb.

Apoi, începând de la acest caracter, este nevoie de cât mai multe caractere care formează o reprezentare întreagă validă și le convertește într-o valoare int lungă. Orice a rămas din șir după ultimul caracter valid este ignorat și nu are niciun efect asupra rezultatului.

Exemplul 2: funcția atol () cu spațiu alb și caractere finale

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

Când rulați programul, ieșirea va fi:

 Număr în șir = 13 Număr în lung Int = 13 Număr în șir = 25 Număr în lung Int = 25 Număr în șir = 41.90abcd Număr în lung Int = 41 abcd14 până la Int lung = 0

Articole interesante...