Heim >Backend-Entwicklung >C++ >Wie kann ich über Zeichen in einem C-String iterieren?

Wie kann ich über Zeichen in einem C-String iterieren?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-24 17:20:28259Durchsuche

How Can I Iterate Over Characters in a C   String?

Schleife über Zeichen in einer Zeichenfolge

Das Durchlaufen jedes Zeichens in einer Zeichenfolge ist eine häufige Operation in der Programmierung. In C gibt es mehrere Ansätze, um dies zu erreichen:

Bereichsbasierte for-Schleife (C 11 und höher):

Diese Schleife bietet eine elegante Syntax zum Durchlaufen jedes Zeichen in einer Zeichenfolge:

std::string str = "";
for (char &c : str) {
  // Perform operations on `c`
}

Schleife mit Iteratoren:

Mithilfe von Iteratoren können Sie nacheinander auf die Zeichen zugreifen:

std::string str = "";
for (std::string::iterator it = str.begin(); it != str.end(); ++it) {
  // Perform operations on `*it`
}

Traditionelle for-Schleife:

Dieser klassische Ansatz verwendet die Größe der Zeichenfolge, die jeden Index durchlaufen soll:

std::string str = "";
for (std::string::size_type i = 0; i < str.size(); ++i) {
  // Perform operations on `str[i]`
}

Loop for Nullterminierte Zeichenarrays:

Verwenden Sie für Zeichenfolgen im C-Stil eine Schleife, die iteriert, bis sie auf das Nullzeichen trifft:

char *str = "";
for (char *it = str; *it; ++it) {
  // Perform operations on `*it`
}

Diese Ansätze bieten verschiedene Möglichkeiten zum Durchlaufen die Zeichen einer Zeichenfolge in C, jedes mit seinen eigenen Vor- und Nachteilen. Die bereichsbasierte for-Schleife bietet prägnanten und lesbaren Code, während die traditionelle Schleife die größte Kontrolle über die Iteration bietet.

Das obige ist der detaillierte Inhalt vonWie kann ich über Zeichen in einem C-String iterieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn