Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Variable ändern über Terminal Kategorie: C-Control I V1.1 (von Achim - 31.01.2005 23:18)
 Als Antwort auf Re: Variable ändern über Terminal von Henrik - 31.01.2005 19:56
> > > > Da Dein Programm nicht anhalten soll, kannst Du nicht INPUT verweden.
> > >
> > > Sollte bei Prüfung auf RxD trotzdem gehen. Natürlich hält das Programm dann während
> > > Input an, das ist bei Get aber nicht anders.
> >
> > Nicht ganz. Wenn RXD true ist, ist mindestens ein Zeichen bereits im Puffer. Mit get hole ich mir genau eines, es findet also garantiert kein Warten statt.
>
> Da hast Du natürlich recht. Allerdings müsste man zwischen den gets noch eine
> timeout Funktion unterbringen, denn irgendwie müssen wir ja überprüfen ob und
> wann die Eingabe als gültig erachtet werden soll,

Nach Eingabe von Enter. Hatte ich so skizziert.

> erfolgt die  Quittung nach Zeitxx
> nicht, ist die die Routine eben zu verlassen..

Kann man einbauen. Muss man aber nicht. ;-)  Insbesondere da es bei meinem Beispiel keine "Routine" gibt, die verlassen wird. Die Eingaben werden en passant erfasst.

Insbesondere wollte ich aber für den OP das Beispiel trotz der für einen Anfänger komplizierten Anfrage so einfach wie möglich halten. Wenn er das Beispiel für seine Zwecke hätte anpassen können, und dann gemerkt hätte, dass er noch einen Timeout braucht, wäre es IMHO früh genug gewesen, entsprechende Maßnahmen vorzustellen ... ;-)

> > Mit Input wird aber auf Enter gewartet und das kann beliebig lange dauern.
>
> Jupp, das muss dann leider billigend in Kauf genommen werden.  

Fand ich, insbesondere angesichts der in dieser Hinsicht eindeutigen Aufgabenstellung des OP, eben nicht.

> Ob der Anwender mit den Einschränkungen im konkreten Fall leben kann,
> hängt von eben diesem Fall ab.
>
> Deine get Methode ist (um ein Timeout erweitert) natürlich besser und sieht bei mir in einigen Programmen so aus (Nur die Hauptfunktion und auch noch ohne Timeout):
>
> function GET_THREE()
> GET_IRKEY_WAIT()
> GET_IRKEY_WAIT()
> GET_IRKEY_WAIT()

Auch bei diesem Code läuft das Programm entgegen der Aufgabenstellung des OP leider nicht weiter, solange die Eingabe unvollständig ist.

Bye
 Achim

 Antwort schreiben

Bisherige Antworten:

Re: Variable ändern über Terminal (von Hanns - 31.01.2005 23:48)
    Re: Variable ändern über Terminal (von Achim - 1.02.2005 0:05)
        Re: Variable ändern über Terminal (von Hanns - 1.02.2005 0:49)
            Re: Variable ändern über Terminal (von Henrik - 1.02.2005 4:16)
                Re: Variable ändern über Terminal (von Hanns - 1.02.2005 22:19)
                    Re: Variable ändern über Terminal (von Stefan Tappertzhofen - 1.02.2005 23:01)
Re: Variable ändern über Terminal (von Henrik - 31.01.2005 23:46)