[C++] char Array durchsuchen nach String?

Nerran

Grünschnabel
Moin,
Ich habe folgenden Code hier:
Code:
void MSGGet(void *csock)
{
	char out[1000];
	int i = 0;
	while(1)
	{
                i = recv((SOCKET)csock, out, 1000, 0);
		if(i > 0)
		{
			out[i] = 0;
			cout<< out << endl;

		}
		Sleep(8);
	}
}
Wie bring ich das Programm jetzt dazu out nach einem Text zu durchsuchen und dann eine if Anweisung auszuführen?
 
Hallo Nerran,

entweder direkt mit strstr oder erst einen std::string konstruieren und dann mit find. Den dritten Parameter von recv solltest du übrigens auf 999 setzen, da es sonst zu einem Pufferüberlauf kommen kann.

Grüße,
Matthias
 
Gut danke, soweit funktioniert das schonmal...aber jetzt hab ich gleich das nächste Problem: Ich möchte outstr in einen Array schreiben wobei outstr nach einem Leerzeichen getrennt wird. Also :
outstr= "Hallo Welt. Dies ist ein Test";
outstrarray[0]="Hallo";
outstrarray[1]="Welt.";
...usw.
Habe bisher keine vernünftige Funktion gefunden ;/
 
Ich weiß nicht, welche Bibliotheken du verwendest, aber suche mal nach den Funktionen strtok und split. strtok ist eine C-Funktionen, die du in string.h findest; split gibt es oft als Methode von string-Klassen.
 
Zuletzt bearbeitet:
Zurück