char zerteilen



  • Hallo communitiy,

    ich habe eine Uhrzeit in einem Char-Array bsp. 19:42:49.
    Nun habe ich mir ein Code geschrieben der die Stunden, Minuten und Sekunden
    in den genannten Variablen abspeichert. Das Problem ist, dass
    es irgendwie immer nur in der Stunde Variable speichert. Was
    mache ich falsch?

    int laenge_uhrzeit=0;
     char uhrzeit[9];
     char uhrzeit_stunden[3];
     char uhrzeit_minuten[3];
     char uhrzeit_sekunden[3];
    
     sprintf(uhrzeit, Ring.uhrzeit.c_str());
    
     for(laenge_uhrzeit = 0; laenge_uhrzeit <8; laenge_uhrzeit++)
     {
      if(uhrzeit[laenge_uhrzeit]==':')
      {
      }
      else
      {
       if(laenge_uhrzeit < 2)
       {
        uhrzeit_stunden[laenge_uhrzeit] = uhrzeit[laenge_uhrzeit];
       }
       else
       {
        if(laenge_uhrzeit < 5 && laenge_uhrzeit > 2)
        {
         uhrzeit_minuten[laenge_uhrzeit] = uhrzeit[laenge_uhrzeit];
        }
        else
        {
         if(laenge_uhrzeit > 5)
         {
          uhrzeit_sekunden[laenge_uhrzeit] = uhrzeit[laenge_uhrzeit];
         }
         else
         {
         }
        }//else
       }//else
      }//else
     }
    

  • Mod

    Hallo

    und was hat das mit der VCL zutun

    wenn du mit dem Builder entwickelst
    solltest du sowas nicht selbst schreiben

    mfg
    Klaus



  • KlausB schrieb:

    und was hat das mit der VCL zutun ... wenn du mit dem Builder entwickelst solltest du sowas nicht selbst schreiben

    Oder sich einmal gründlich mit C-Strings (char-arrays), vorhandenen Standardfunktionen (wie strcpy, strcat), und ggfs. Zeigern beschäftigen. Kann nicht schaden, auch wenn es gerade für Datum und Uhrzeit besseres gibt.



  • ich bekomm doch aber mit den Funktionen z.B. nicht den mittleren Teil. Nur die Zeichen beliebig lang von Anfang?



  • könnt ihr mir bitte helfen... ich hab leider keine Ahnung wie



  • hab des Problem behoben. Im Minuten und Sekunden Array bin ich über mein Feld raus. Richtig wäre

    uhrzeit_minuten[laenge_uhrzeit-3] = uhrzeit[laenge_uhrzeit];
    uhrzeit_sekunden[laenge_uhrzeit-6] = uhrzeit[laenge_uhrzeit];
    

Anmelden zum Antworten