Funktion ob char keine Wert enthält.. ?!
-
Moin..
gibt es eine Funktion um herraus zufinden ob char leer ist?..
char test[2]; // Wenn chat leer ist hab ich "\0\0\" //Kann ich das irgendwie prüfen ob char leer ist auser mit : if((test[0] == 0) && (test[1] == 0)) //?????????????mfg
|23|
Danke für jeden Tip.
-
|23| schrieb:
if((test[0] == 0) && (test[1] == 0))eigentlich reicht das 'if (test[0] == 0)'
aber wenn du unbedingt eine funktion verwenden willst: 'if (strlen(test) == 0)'
-
net schrieb:
|23| schrieb:
if((test[0] == 0) && (test[1] == 0))eigentlich reicht das 'if (test[0] == 0)'
aber wenn du unbedingt eine funktion verwenden willst: 'if (strlen(test) == 0)'hmm ja das strlen prüft ja nur die Länge..
was ich versuche zu erklären ist wenn jetzt mein char nicht [2] ist sonder =
[200]. dann wird die if abfrage aber zimlich lange.ich brauch halt eine Funktion die kommt den ganzen char durchschaut ob alles auf 0 ist.. ist irgedn einwert nicht 0 dann....
weiß was ich meine ?
-
Edit: Hier stand Quark...
Warum willst du das wissen bzw wofür brauchst du das denn überhaupt?
-
|23| schrieb:
ich brauch halt eine Funktion die kommt den ganzen char durchschaut ob alles auf 0 ist.. ist irgedn einwert nicht 0 dann....
soweit ich weiss gibt's dafür keine fertige funktion. ist aber ziemlich einfach gehackt...
// gibt true zurück wenn alles 0 ist bool is_zeroed (char *memory, int memorysize) { while (memorysize--) if (*memory++) return false; return true; }nicht ausprobiert, aber könnte gehen
-
Definiere leer... wenn strlen==0 dann ist ein String leer... und was genau willst du jetzt?
-junix
-
ein Tipp am Rande : Man kann IF-Bedingungen auch in eine Schleife packen, du musst also nicht zig mal nen IF schreiben...
-
Also:
for(int i=0; i < 200; i++) { if((test[i] == 0) { // Dein Code } }