c++ For each Schleife ändern?

1 Antwort

Man kann mit einer Zählervariable arbeiten:

for (std::string::size_type index = 0; index < yourString.size(); ++index) {
  std::cout << yourString[index] << std::endl;
}

oder einem Iterator:

for (auto iterator = yourString.cbegin(); iterator != yourString.cend(); ++iterator) {
  std::cout << *iterator << std::endl;
}
McCallister 
Fragesteller
 01.11.2022, 17:18

Ich danke aber was mache ich dann aus den Variablen ch in den Verzweigungen?

0
regex9  01.11.2022, 17:40
@McCallister

Im ersten Beispiel zeigt yourString[index] auf das jeweils aktuelle Zeichen, beim zweiten Beispiel der derefenzierte Wert von iterator. Meine angeführten Konsolenausgaben sollten das deutlich machen.

0
McCallister 
Fragesteller
 01.11.2022, 17:41
@regex9

ich möchte das gerne mit dem oberen Vorschlag machen weil wir das zweite nicht im Unterricht behandelt haben.

0
regex9  01.11.2022, 18:43
@McCallister

Wie ich bereits schrieb:

Im ersten Beispiel zeigt yourString[index] auf das jeweils aktuelle Zeichen, beim zweiten Beispiel der derefenzierte Wert von iterator.
0