Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: String vergleichen Kategorie: Programmierung (von Thomas - 11.10.2002 16:14)
Als Antwort auf Re: String vergleichen von André H. - 10.10.2002 23:57

> Hallo Thomas,

> > Ich habe ein Problem.
> > Ich habe einen Zeitstring (z) der sich aus system.hour und system. minute zusammen setzt.
> > jetzt habe ich in mein eprom  mit der folientastatur einen string geschrieben und möchte
> > diese beiden nun vergleichen,und wenn sie gleich sind soll ein ausgang gesetzt werden.
> > das mit denn Ausgängen das klappt ja.
> > Der zeit string wird gleichzeitig auf dem Externen LCD angezeigt
> > das format  00:00
> > in meinem eprom (s) steht auch 00:00
> >
> > jetzt habe ich versucht dieses mit
> >
> > string s;                 Sting aus EEprom
> > string z;                 Zeit string
> > strx.comp(z,s,1):
> >  
> > egal ob ich nun 1 oder 0 oder -1 dort schreibe
> > as relais schaltet sofort ein ohne das auch nur eine nur ein zeichen stimmt.
> >
> Im dritten Wert mu� die Länge des Strings stehen !!
> Wenn Du dort nur 1 schreibst, wird nur ein Zeichen (das erste) verglichen.
> Die Angabe von 0 ist nicht zulässig. Bei Strings sind die möglichen
> Werte 1 bis 29.
> Gebe in Deinem Fall den Wert 5 für die Länge an.
>
> Ich werde demnächst eine neuere Version des Moduls hochladen,
> bei der bei comp() nurnoch zwei Parameter, also nurnoch die Strings,
> angegeben können. Aber von de Funktion selbst ändert sich nichts.
> Poste auch mal einen Programmausschnitt ins Forum.
> (Die Routine, in der der StringvergleichdurchgefĂĽhrt wird, und das Relais
> geschalten wird)
> Vielleicht befindet sich dort noch ein Fehler.
>
> MfG André H.
>

Hallo Andre
danke fĂĽr deine super schnelle Hilfe aber das hat mich nicht weiter gebracht.
hir der Programm ausschnitt.

      
       z="";                             //Zeitstring
       str.putintf(z,system.hour(),2);
       z=z+':';
       str.putintf(z,system.minute(),2);// Wird auch auf ext.LCD ausgegeben

        ...

        if system.second()<=1   // der vergleich soll jede minute erfolgen zur gleichen Zeit
        {
        eeprom.readstr(0,0,a);    // a ist der string aus dem eprom Eprom 0 Adresse 0
        if strx.comp(z,a,5);        // a mit z vergleichen  wenn gleich dann
        {
        ports.set(8,1);               //Ausgang  8 einschalten
        sleep 200;
        }
        }
   
         ....

vieleicht findest du ja einen fehler ichfind ihn nicht oder hast du ne besser idee

gruĂ? Thomas


    Antwort schreiben


Antworten:

Re: String vergleichen (von André H. - 11.10.2002 18:20)
    Danke (von Thomas - 11.10.2002 18:59)