Heim >Backend-Entwicklung >C++ >Wie überprüfe ich, ob ein C-String eine ganze Zahl darstellt?
Überprüfen, ob ein C-String eine Ganzzahl ist
In bestimmten Situationen, beispielsweise bei der Verarbeitung von Benutzereingaben, kann es notwendig sein, zwischen zu unterscheiden Zeichenfolgen, die Ganzzahlen darstellen, und solche, die dies nicht tun. Glücklicherweise gibt es in C mehrere Möglichkeiten, diese Aufgabe zu lösen.
Ein Ansatz besteht darin, die C-Funktion strtol zu nutzen, die eine Zeichenfolgendarstellung einer Ganzzahl in einen Ganzzahlwert umwandelt. Um strtol zu verwenden, können Sie eine einfache Funktion schreiben, die den Konvertierungsprozess kapselt:
<code class="cpp">inline bool isInteger(const std::string &s) { if (s.empty() || ((!isdigit(s[0])) && (s[0] != '-') && (s[0] != '+'))) return false; char *p; strtol(s.c_str(), &p, 10); return (*p == 0); }</code>
Diese Funktion bietet eine zuverlässige Möglichkeit, zu bestimmen, ob eine bestimmte Zeichenfolge als Ganzzahl geparst werden kann. Indem Sie es in Ihren Code integrieren, können Sie Zeichenfolgen, die ganze Zahlen und Nicht-Ganzzahlen darstellen, angemessen verarbeiten.
Das obige ist der detaillierte Inhalt vonWie überprüfe ich, ob ein C-String eine ganze Zahl darstellt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!