Frage zu OR Operator
-
Moin,
ich habe mal kurz ne Frage. Ich habe ein Char Array, das mit bestimmten Zeichen gefüllt ist. Eine Schleife soll solange das Array durchlaufen, wenn eins von 2 Zeichen gefunden wird.
while(buffer[i]!=','||'$') { i++; }
Kann ich das so machen, oder muss ich das so machen?
while((buffer[i]!=',')||(buffer[i]=!'$')){i++;}
Danke schon mal im voraus.
MfG
Philipp
-
Das zweite.
-
die läuft sich doch tot...
-
Und was machst du, wenn die Eingabe keines der Zeichen enthält?
Ich würde es so lösen:
#include <stdio.h> #include <string.h> int main() { const char buf[64] = "Hier ist ein $."; int len = strlen(buf), pos = -1; int i; for (i = 0; i < len; ++i) { if (buf[i] == ',' || buf[i] == '$') { pos = i; break; } } if (pos != -1) { printf("Gefunden %c an Position %d.\n", buf[pos], pos); } else { printf("Nichts gefunden.\n"); } return 0; }
-
Ok Danke, war mir da nicht ganz sicher
-
while( buffer[i] && ( buffer[i]==',' || buffer[i]=='$' ) ) {i++;}