title image


Smiley Re: cbreak und altes (n)curses
Nochmal,



wenn du ein curses-Programm unter Linux/Unix durch den Aufruf der

Funktion 'initscr()' startest wird der Eingabemodus in der

Regel auf den sog.'Cooked Mode' gesetzt..,d.h die Verarbeitung ge-

schieht zeilenweise und die Eingabe steht erst zur Verfügung wenn

du die Eingabetaste drückst.



Wenn du also willst das dein Zeichen sofort -und ohne deine Eingabe

mit return zu bestätigen- dem Programm zur Verfügung steht dann ruf

in deinem Code die Funktion 'cbreak()' auf!

Willst du aber dein Zeichen vor der Verarbeitung erst mit return

bestätigen mußt du das dem Compiler mit der Funktion 'nocbreak()'

mitteilen.





/* - Soll ich dann in meiner code cbreak aktivieren beim - */

/* -"int cbreak_P((void));" statt nur cbreak() zu schriben. - */



ist eine Header-Datei in der sog.

Funktionsdeklarationen stehen!

Da steht im Prinzip nur welche Datentypen die dort aufgeführten

Funktionen und Makros im Funktionsargument erwarten und welche

sie wieder zurückliefern sollen.

Wenn du also "int cbreak(void)" in deinen Code schreibst und den

Header includierst,redeklarierst du die Funktion 'cbreak'

und der 'gcc' bricht den Übersetzungsvorgang ab.

Du brauchts die Funktionen also nur noch aufzurufen!



Wenn du eine alte Linux-Distibution benutzt kann es sein,das

du den Bildschirm z.B vor der der Benutzung von 'getstr()' erst

mit der Funktion 'refresh()' aktualisieren mußt.



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: