STOL -Funktion in C ++

STOL -Funktion in C ++

C ++ ist eine der beliebtesten und ältesten Programmiersprachen, die für die Entwicklung von Hochleistungsanwendungen verwendet werden. Es wird bei hochexperten Programmierern und Anfängerentwicklern verwendet. Es wird hauptsächlich in der Spielentwicklung verwendet und ist eine ideale Option für die Entwicklung von Betriebssystemen. Wenn Sie Code in der C ++ - Sprache schreiben, können Sie auf die Konvertierung von Daten von einem Typ in einen anderen konvertieren. In diesem Artikel lernen Sie, eine Zeichenfolge in eine lange ganze Zahl zu konvertieren. Es ist ziemlich schwierig, eine Zeichenfolge in ein anderes Format umzuwandeln. Die C ++ - Programmiersprache bietet jedoch eine schnelle und effiziente Möglichkeit, Strings in Ganzzahlen umzuwandeln.

STOL -Funktion in c++

Der Stol ist eine C ++-integrierte Funktion in der STD-Bibliothek. Es wandelt Saiten in lange Ganzzahlzahlen um. Es wandelt den String -Inhalt in eine ganzzahlige Anzahl der angegebenen Basis um und gibt einen langen Ganzzahlwert zurück. Es dauert drei Parameter, einer ist die Eingangszeichenfolge, der zweite ist der Objektparameter und der dritte ist die numerische Basis. Die Syntax der STOL -Funktion ist unten angegeben. Schauen Sie sich an:

Die Funktion Stol nimmt drei Parameter an: input_string, Größe und Basis. Das „input_string“ repräsentiert die Eingabezeichenfolge, die in eine lange Ganzzahl -Nummer konvertiert werden muss.

Der Parameter „Größe“ repräsentiert das Objekt von Typ size_t, das die nächste Zeichenposition in der Eingangszeichenfolge nach dem numerischen Wert trägt. Es kann ein Nullzeiger sein, wenn er nicht verwendet wird.

Der dritte Parameter, der Parameter „Basis“. Wenn beispielsweise die Basis „2“ angegeben ist, wird die Zeichenfolge als Ganzzahlbasis 2 -Nummer interpretiert. Der Standardwert des Basisparameters beträgt 10, und wenn 0 bereitgestellt wird, wird der Basiswert durch das Format in der Sequenz bestimmt. Die STOL -Funktion gibt die lange Ganzzahlnummer zurück, die den Int -Wert einer bestimmten Zeichenfolge darstellt.

Lassen Sie uns nun einige Beispiele untersuchen, um zu verstehen, wie die Stol -Funktion in C funktioniert++.

Beispiel 1

In diesem Beispiel werden wir dezimale und hexadezimale Saiten bereitstellen, um zu überprüfen.

Das „Dec = 123456789“ ist eine Dezimalzeichenfolge und wird mit der Stol -Funktion Stol (Dec & Size) in eine lange Ganzzahl umgewandelt, die unter Verwendung der Stol -Funktion umgewandelt wird (Dez. und Größe). Beachten Sie, dass die Basis in der Funktion nicht als Eingabeparameter angegeben ist, der als Ergebnis die Standardbasis 10 verwendet. Um die Zeichenfolge aus einer hexadezimalen Zahl in eine Dezimalzahl zu konvertieren, wird Basis 16 als Eingabeparameter Stol (Hex, Nullptr, 16) bereitgestellt. Wie wir wissen, ist die 16 Basis eine Hexadezimalzahl.

#enthalten
#enthalten
#enthalten
int main ()

std :: string dec = "123456789";
std :: string hex = "a2bf3c";
std :: string :: size_type Größe;
long lidec = std :: stol (dec & size);
long lihex = std :: stol (hex, nullptr, 16);
std :: Cout << "Input decimal string "<std :: Cout << "Input hexadecimal string "<Rückkehr 0;

Hier ist die folgende Ausgabe. Beachten Sie, dass die Dezimalzeichenfolge „123456789“ in "123456789" -Decimal Long Integer umgewandelt wurde. Während die hexadezimale Zeichenfolge „A2BF3c“ auf die Hexadezimalzahl von „10665788“ umgewandelt wurde. Hier sind die erforderlichen Schritte, die Sie ausführen können, um zu erfahren, wie die Konvertierung durch die Stol -Funktion durchgeführt wird:

(A2BF3C) ₁₆ = (10 × 16⁵) + (2 × 16⁴) + (11 × 16³) + (15 × 16²) + (3 × 16sprache) + (12 × 16⁰) = (10665788) ₁₀

Beispiel # 2

In diesem Beispiel werden wir eine Binärzahl unter Verwendung der Stol -Funktion konvertieren. Sehen wir uns den folgenden Code an und verstehen Sie die Arbeit des Codes. Der „1010110110“ wird als Eingangszeichenfolge angegeben und Basis 2 wird als Eingangsbasisparameter Stol (Bin & Größe, 2) bereitgestellt, der die Zahl im Binärformat darstellt. Die STOL -Funktion wandelt die Binärzahl in eine Dezimalzahl um, indem sie folgende Schritte befolgt:

(1010110110) ₂ = (1 × 2⁹) + (0 × 2⁸) + (1 × 2⁷) + (0 × 2⁶) + (1 × 2⁵) + (1 × 2⁴) + (0 × 2³) + (1 × 2²) + (1 × 2¹) + (0 × 2⁰) = (694) ₁₀
#enthalten
#enthalten
#enthalten
int main ()

std :: string bin = "1010110110";
std :: string :: size_type Größe;
Long libin = std :: stol (Bin & Größe, 2);
std :: Cout << "Input binary string "<Rückkehr 0;

Wie Sie sehen können, dass die STOL -Funktion das gleiche Ergebnis wie der allgemeine Binär- und Dezimalumwandlungsprozess zurückgegeben hat.

Beispiel # 3

In diesem Beispiel werden wir sehen, was passiert, wenn wir die STOL -Funktion mit ungültigen Eingaben testen. Eine Zeichenfolge mehrerer Zeichen wird der Stol -Funktion zur Verfügung gestellt, und 0 wird als Basiswert bereitgestellt, sodass die Funktion die Basis der Zeichenfolge automatisch bestimmt. Hier ist der Code:

Eine Reihe von Zeichen wird als Eingangszeichenfolge bereitgestellt, die nicht durch Basiswerte bestimmt wird, i.e., 10, 16, 2 usw. Die Funktion gibt also einen Fehlerwert zurück.

#enthalten
#enthalten
#enthalten
int main ()

std :: string chr = "abcdefgh";
std :: string :: size_type Größe;
long str = std :: stol (chr, nullptr, 0);
std :: Cout << "Input character string "<Rückkehr 0;

Siehe die Ausgabe unten. Beachten Sie, dass der Compiler eine Ausnahme „Invalid_argument“ angehoben hat.

Beispiel # 4

In diesem Beispiel werden wir eine Kombination aus gültigen und ungültigen Eingaben bereitstellen, um das Ergebnis der Stol () -Funktion zu sehen.

Die Eingabezeichenfolge ist eine Kombination aus gültigen und ungültigen Zeichen, "123xf25". Die als Eingangsbasis bereitgestellte „0“ ISG, sodass die Funktion die Basis der Eingabezeichenfolge automatisch basierend auf dem Zeichenstyp bestimmt.

#enthalten
#enthalten
#enthalten
int main ()

std :: string chr = "123xf25";
std :: string :: size_type Größe;
long str = std :: stol (chr, nullptr, 0);
std :: Cout << "Input string "<Rückkehr 0;

Hier ist die Ausgabe, die die Arbeit der Stol -Funktion mit einer Kombination aus gültigen und ungültigen Eingaben zeigt:

Beachten Sie, dass die Funktion die "123" in die Dezimalzahl "123" umgewandelt und den Rest der Zeichenfolge verworfen hat, da sie eine ungültige Eingabe "x" erhielt. Die Zeichenfolge nach dem Zeichen "x" wird nicht durch die Stol -Funktion konvertiert, wodurch nur die ersten Zeichen der Zeichenfolge als lange int zurückgegeben werden.

Abschluss

In diesem Beitrag haben wir die Stol -Funktion der C ++ - Programmiersprache untersucht. Mit Hilfe einiger nützlicher und einfacher Beispiele haben wir gelernt, wie die Stol -Funktion mit verschiedenen Arten von Eingängen funktioniert. Die STOL -Funktion nimmt drei Parameter vor, die Eingangszeichenfolge, die konvertiert werden soll, ein Größenparameter, der die Position der Funktion in der Zeichenfolge darstellt, und den Basiswert, der die Basis der Eingangszeichenfolge darstellt. Es gibt den langen Int -Wert der Eingabezeichenfolge zurück.