probleme beim char vergleich
-
nein will schon ne zeichenkette also so:
char empf[20]; retval = recv( asd,empf, sizeof(empf),MSG_TIMEOUT, 20000L, &error ); if (empf == "BEFEHL01") // ich weiss es geht so nicht - aber wie :-) { . . . }
als Compiler habe ich Borland C++ 5.01 da ich Code für nen 80186 Prozessor schreiben will
-
Also das ist ein char, ein einzelnes Zeichen, und _nur_ das:
char c = 'A';
und das ist eine Zeichenkette, das was du eigentlich willst:
char name[] = "John Lennon";
Und für Zeichenketten, so sieht's halt aus, wirst du strcmp brauchen.
Und vom Borland-Compiler hab ich leider keine Ahnung. Aber vllt. mal in Dokumentation schauen, hilft vllt.
-
DRIVER26 schrieb:
wenn ich versuche in meinem C code #include <string.h> einzubinden dann bekomme ich die fehlermeldung das ich mit c++ arbeiten muss und nicht mit c
schon mal #include <string> oder #include <cstring> versucht?
ansonsten musst du halt strcmp selbst machen.
-
Ich würde eher einen C-Compiler empfehlen
Bzw. den Compiler richtig einstellen.
-
wenns char-felder sind, also sowas:
char a_ar[16],b_ar[16];
dann entweder
string + tolle stringfunktionen
oder selbst hand anlegen und jedes element auf gleichheit prüfen
attention:
musst natürlich vorher sichergehen, dass beide char-arrays selbe anzahl an elementen beinhalten und länge ermitteln.
edit: code aufgrund von mängeln beseitigt
-
ethereal: es gibt strcmp(). benutze sie.
-
c.rackwitz schrieb:
ethereal: es gibt strcmp(). benutze sie.
1. habe ich nicht behauptet, dass man sowas nicht benutzen soll. habe nur ein beispiel geliefert, wie's auch "manuell" geht
2. haben schon drei leute vor dir auf die ungeheure bedeutung von strcmp hingewiesen
3. brauche ich sie momentan gar nicht, warum soll ich sie dann benutzen?!
-
verzeihe bitte meine faulheit, nicht den gesamten thread durchzulesen. der titel des threads hat meine aufmerksamkeit nicht genuegend wachgerufen.
-
Wolltest halt auch mal fehlerhaften Code posten. Versteh ich
Edit: @ ethereal
-
hmpf nur weil das semikolon fehlt
das ist blitzschnell ausgedacht und nicht weiter geprüft, ich editier's.
(thx)
-
@ethereal: ausserdem fehlt ein { nach dem funktionskopf...
-
Und die Klammern im Funktionskopf sind auch noch falsch
-
einrueckung und saubere whitespacesetzung nicht zu vergessen
-
wisst'er was? ich löschs einfach wieder
dann gibts nichts mehr zu mäkeln. das sollte ursprünglich nicht exakter code sein, sondern eher pseudo. however, bevor es zu noch mehr verwirrung kommt.
-
dann schreibs halt dazu das es psycho code ist und keiner wird meckern.
-
Mal ehrlich, bevor man irgendwelchen Socket Code (ab)schreibt, sollte man sich mit den Grundlagen auseinander setzen. Sonst wird das eh nix werden.
-
Müllsortierer schrieb:
Mal ehrlich, bevor man irgendwelchen Socket Code (ab)schreibt, sollte man sich mit den Grundlagen auseinander setzen. Sonst wird das eh nix werden.