Avatar ·

Wie entferne ich korrekt Leerzeichen am Anfang und Ende eines std::string in C++?

Hallo zusammen! Ich bin ein C++-Anfänger und habe eine scheinbar einfache Aufgabe: Ich muss Leerzeichen (und allgemein alle Whitespace-Zeichen) am Anfang und Ende eines Strings entfernen. Ich arbeite mit std::string. Ich habe versucht, meine eigene trim-Funktion mit Schleifen und Zeichenprüfung über std::isspace zu schreiben, aber der Code wurde umständlich und, wie ich finde, ineffizient. Hier ist, was ich bisher habe: ```cpp #include #include #include std::string trim(std::string str) { // Entferne Leerzeichen am Anfang while (!str.empty() && std::isspace(str[0])) { str.erase(0, 1); } // Entferne Leerzeichen am Ende while (!str.empty() && std::isspace(str[str.length() - 1])) { str.erase(str.length() - 1, 1); } return str; } ```