terminal und probleme mit dem '%'
-
hallo,
ich schreibe grade an einem terminalprogramm mit ncurses.
neuerdings habe ich probleme mit dem '%' zeichen bei usereingaben,
und auch beim ausgeben.
folgendes habe ich gesetzt:cbreak ();/*entfernt linebuffering (keyboard input erst ab cr) */ noecho (); /*beim tippen wird der ch nicht gezeigt */ keypad (body, TRUE); /*pfeiltasten etc werden interpretiert */ curs_set (0);/*macht den zeiger unsichtbar*/
wenn ich nun per wgetch einen char auslese und den gleich wieder ausgebe wird der normalerweise korekt angezeigt. das '%' aber nicht, beim ersten mal.
wenn ich direkt dannach noch eines tippe, dann zeigt er mir eines an...
beim printw ist es dasselbe: er zeigt das '%' erst an, wenn es doppelt vorkommt im string, wenns einfach vorkommt dann schneidet er den string dort ab.anders ist es mit dem '&' und dem '/', diese werden korrekt dargestellt.
was mache ich denn falsch? ist es irgentwas mit der consolenfont?
(euros werden auch nicht angezeigt, zumindest unter
ausserhalb des programms geht alles gut mit dem '%'also, wenn jemand hier einen heissen tip hätte wäre ich ihm sehr dankbar.
thx schonmal,
pazz
-
was machst du denn genau? zeig mal den code?
du weisst hoffentlich, dass printf das prozentzeichen
interpretiert (z.b. %i, %s...); willst du ein '%' ausgeben
muesstest du z.b. printf( "%%" ) schreiben.
-
ach toll!
das is n heisser tipp *g*
ja das kann es sogar sein, ich glaub es is nicht mein tag heute *g
wenn das das problem löst dann versinke ich im erdboden nachdem ich mich zehn mal gegeißelt habe..
danke erstmal für die antwort.
thx
pazz