[C++] sdt::string zu char*

bad_alloc

Grünschnabel
Folgendes problem:

ich habe einen string in folgendem format

teil1|teil2

nun möchte ich diesen mit strtok parsen, das sähe so aus:
Code:
string parseme;
char* begrenzer = '|'
strtok(parseme, begernzer);

so, wie ihr bestimmt schon gemerkt habt nimmt strtok() nur strings im format char* auf.
wie schaffe ich es nun, dass der std::string zu char* (NICHT const char*) umgewandelt wird?
 
So weit ich das beurteilen kann gar nicht, aber verwende doch diesen Code:
C++:
std::vector<std::string> tokenize(const std::string& str, char delim)
{
    std::vector<std::string> tokens;
    std::stringstream mySstream(str);
    std::string temp;

    while(getline(mySstream, temp, delim))
        tokens.push_back(temp);

    return tokens;
}

Dieser Funktion gibst du den string mit der gesplitten werden soll und das Trennzeichen, zurück bekommst du einen Vector aus Strings.
 
Zuletzt bearbeitet von einem Moderator:
Zurück