prüfen, ob int [SOLVED]



  • hallo,

    ich möchte gerne prüfen, ob ein char eine zahl ist.
    mir ist schon klar, dass ich mit (ch ist mein char) ch==1 || ch==2 usw prüfen könnte.
    aber gibts nicht eine kürzere (sparsamere) variante?
    zB if ( sizeof(ch) == sizeof(int) )?? -> geht natürlich net, weil ch == char ...

    danke im voraus!



  • if ((ch >= 0) && (ch <=9))
    


  • @hephaistos6,
    es gibt auch eine tolle Funktion:

    #include <ctype.h>
    int isdigit( int c );
    


  • Falls das Zeichen, dass in deinem char gespeichert ist, eine Zahl ist, dann kannst du das mit isdigit() abprüfen.

    Ansonsten steht eigentlich immer eine Zahl in einem char, nur die Ausgabe als Zeichen macht daraus auch ein Zeichen. D. h. z. B. eine '0' ist nicht gleich eine 0.



  • isdigit is cool danke! sowas hätte ich gesucht 🙂

    AJ schrieb:

    Ansonsten steht eigentlich immer eine Zahl in einem char, nur die Ausgabe als Zeichen macht daraus auch ein Zeichen. D. h. z. B. eine '0' ist nicht gleich eine 0.

    ich weiß... das hab ich gemerkt. aber mit ch<='9' funktionierts soweit...

    danke euch


Log in to reply