Toon posts:

[C, linux] Char schrijven naar de terminal

Pagina: 1
Acties:

Verwijderd

Topicstarter
Met printf kan je een stukkie tekst schrijven naar de console.
Maar nu wil ik een char schrijven op bv. positie 4,5, hoe doe ik dat? Iemand vertelde mij al dat ik termios.h moest gebruiken, maar daarin kon niet veel zinnigs uit halen. Als je niet helemaal begreep wat ik bedoel: in BASIC doe je het zo:

locate 4,5: print "A"

  • reskobon
  • Registratie: November 2001
  • Laatst online: 14-08 22:26
Een console is simpelweg opgebouwd uit regels en het wegschrijven naar pixelposities kan niet. Wat je wel kan doen is kijken naar de library ncurses. Deze maakt het mogelijk in lagen te werken in een console. Veel terminal based progjes maken hier gebruik van :)

Leeg


  • Rowwan
  • Registratie: November 2000
  • Laatst online: 22-08 18:33
gotoxy(4,5) (Volgens mij uit conio.h) :).. Ik kan het in de MSDN echter niet terugvinden

Verwijderd

Topicstarter
MSDN?? ik heb het over linux hoor

Verwijderd

Topicstarter
gotoxy komt niet voor in mn /usr/include. in geeneen .h file [ff gezocht]

  • leuk_he
  • Registratie: Augustus 2000
  • Laatst online: 22-08 12:03

leuk_he

1. Controleer de kabel!

Verwijderd schreef op 21 mei 2003 @ 11:35:
gotoxy komt niet voor in mn /usr/include. in geeneen .h file [ff gezocht]
Volgens mij gebruikt ncurses "move"

http://en.tldp.org/HOWTO/...TO/attrib.html#ATTR_FUNCS

Maar kijk wel effe naar de hello world, je moet namelijk wel refresh gebruiken en de library meelinken.

Need more data. We want your specs. Ik ben ook maar dom. anders: forum, ff reggen, ff topic maken
En als je een oplossing hebt gevonden laat het ook ujb ff in dit topic horen.


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 22-08 13:19

.oisyn

Moderator Devschuur®

Demotivational Speaker

Rowwan schreef op 21 May 2003 @ 11:32:
gotoxy(4,5) (Volgens mij uit conio.h) :).. Ik kan het in de MSDN echter niet terugvinden
dat is een DOS iets, werkt dus niet onder linux

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

Ik geloof dat je ANSI escape codes kan gebruiken voor het verplaatsen van de cursor... weet niet uit mijn hoofd welke


EDIT:
code:
1
2
3
4
5
6
7
8
9
Cursor Controls:
         ESC[#;#H or ESC[#;#f      Moves cusor to line #, column #
         ESC[#A                    Moves cursor up # lines
         ESC[#B                    Moves cursor down # lines
         ESC[#C                    Moves cursor forward # spaces
         ESC[#D                    Moves cursor back # spaces
         ESC[#;#R                  Reports current cursor line & column
         ESC[s                     Saves cursor position for recall later
         ESC[u                     Return to saved cursor position

van: http://www.isthe.com/chongo/tech/comp/ansi_escapes.html

[ Voor 75% gewijzigd door Verwijderd op 21-05-2003 19:02 ]


  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 21-08 17:14
ANSI escape characters werken alleen als de terminal het support. Dat is onder Linux niet altijd het geval, maar wel vaak.

Bron: http://www.linuxselfhelp....sh-Prompt-HOWTO/x375.html

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein


Verwijderd

Ja, zoals MSalters al zegt werken de ANSI escape characters alleen als de terminal het support. ncurses is een library die je de mogelijkheid geeft om de cursorpositie e.d. te veranderen zonder dat jij je hoeft te verdiepen in die escape characters. ncurses werkt ook met meerdere terminal, die dus geen ANSI escape characters ondersteunen.

Ncurses: http://dickey.his.com/ncurses/
Pagina: 1