tring, um str string für die Verwendung in std :: getline delimiter zu konvertieren

8

Ich versuche, std::string value zu verwenden und verwende es als Trennzeichen in std::getline() function aber egal was ich mache, der Compiler gibt mir einen Fehler. Das versuche ich zu tun:

%Vor%

der Fehler im bekommen ist immer über const char * convertion.

%Vor%

UPDATE:
fand die Antwort: Wie kann ich eine Zeichenfolge in C ++ in Tokens umwandeln?
Ссылка

    
user63898 09.02.2012, 16:47
quelle

2 Antworten

4

Das dritte Argument von getline () ist ein char, kein char-Array. Siehe dies . Sie können diese Funktion nicht verwenden, wenn Sie mehrere Trennzeichen oder ein Trennzeichen aus mehreren Zeichen benötigen.

    
Antoine Mathys 09.02.2012, 16:54
quelle
3

std :: string :: c_str () gibt Ihnen einen Zeiger auf ein Zeichen-Array. Um ein Zeichenarray mit den Ergebnissen des Aufrufs von c_str() zu füllen, müssen Sie strcpy() oder strncpy() verwenden, da diese die C-Stil-Zeichenfolge tatsächlich kopieren.

Außerdem haben Sie delrr als ein Array von 1024 Zeichen Zeigern anstelle von 1024 Zeichen deklariert, ist das wirklich die Absicht?

    
Timo Geusch 09.02.2012 16:49
quelle

Tags und Links