char-Array



  • wie prüfe ich in einem char-Array ob eine Zahl vorkommt?
    Ich hab zB. folgendes Array:

    char cArray[] = "-1.568789587e001 5.5445877856e003 E,AB\r\n";
    

    Nun will ich mit einer for-Schleife jedes Element des Arrays durchlaufen und prüfen ob es eine Zahl ist oder Sonderzeichen usw... Dabei sollen die Werte in ein neues Array geschrieben werden.
    Wenn das erste Leerzeichen kommt soll die gleiche Prüfung nochmals erfolgen und die Werte in ein weiteres Array geschrieben werden.

    hier mal mein Anfang:

    char cArray1[30];
    char cArray2[30];
    int iLenght = StrLen(carray);
    for (int i=0; iLenght; i++)
    {
        if (cArray[i] == /*is eine Zahl zwischen 0 und 9*/) 
        {
            cArray1[i]=cArray[i];
        }
        if (cArray[i] == ' ') .....
    
    }
    


  • http://www.cplusplus.com/reference/clibrary/cctype/isdigit/

    if(isdigit(cArray[i]) // prüft nach ob 0-9
    

  • Mod

    Und wenn mehr als 30 Zahlen vorkommen? Wieso machst du ohne Not solche gefährlichen Sachen?



  • Es schreibt sich übrigens 'length'. </klugscheisser>



  • SeppJ schrieb:

    Wieso machst du ohne Not solche gefährlichen Sachen?

    Weil er es kann! 😃

    if (i >= 30)
    {
       spiele_musik("booom.wav");
       MessageBox("Buffer overflow");
       exit(666);
    }
    

    @TE
    Ich weiß zwar nicht was du vor hast, aber hier im Forum geistern viele Beiträge string to float oder int to float und Konsorten rum. Vielleicht ist da was für dich dabei, was deinem Problem näher kommt.


Anmelden zum Antworten