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
        }
    }
    

Anmelden zum Antworten