C ++ atol () - C ++ Standardbibliothek

Die Funktion atol () in C ++ interpretiert den Inhalt einer Zeichenfolge und gibt den entsprechenden ganzzahligen Wert zurück.

atol () Prototyp

 long int atol (const char * str);

Es ist in der Header-Datei definiert.

Die Funktion atol () verwendet einen String als Parameter, interpretiert seinen Inhalt als ganzzahlige Zahl und gibt den entsprechenden Wert in zurück long int.

atol () Parameter

  • str - Ein String mit der Darstellung einer ganzzahligen Zahl.

atol () Rückgabewert

Die Funktion atol () gibt Folgendes zurück:

  • ein long intWert (der aus der Zeichenfolge konvertiert wird).
  • 0, wenn keine gültige Konvertierung durchgeführt werden konnte.

Wenn der konvertierte Wert außerhalb des Bereichs liegt, führt dies zu undefiniertem Verhalten.

Beispiel 1: Wie funktioniert die Funktion 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; ) 

Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:

 Nummer in String = -114 Nummer in Long Int = -114

Ein gültiger ganzzahliger Wert für die Funktion atol () besteht aus einem optionalen + oder - Vorzeichen, gefolgt von numerischen Ziffern (0-9) . Die Funktion atol () unterstützt keine Hexadezimal-, Unendlichkeits- und NaNAusdrucksfunktionen wie die Funktion atof ().

Im Allgemeinen hat ein gültiges Ganzzahlargument für die Funktion atol () die folgende Form:

 (Leerzeichen) (- | +) (Ziffern)

Die Funktion atol () ignoriert alle führenden Leerzeichen, bis das primäre Nicht-Leerzeichen gefunden wird.

Ausgehend von diesem Zeichen werden dann so viele Zeichen wie möglich benötigt, um eine gültige Ganzzahldarstellung zu bilden und diese in einen langen int-Wert zu konvertieren. Was nach dem letzten gültigen Zeichen von der Zeichenfolge übrig bleibt, wird ignoriert und hat keine Auswirkung auf das Ergebnis.

Beispiel 2: atol () -Funktion mit Leerzeichen und nachgestellten Zeichen

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

Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:

 Nummer in String = 13 Nummer in Long Int = 13 Nummer in String = 25 Nummer in Long Int = 25 Nummer in String = 41.90abcd Nummer in Long Int = 41 abcd14 bis Long Int = 0

Interessante Beiträge...