🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #7367

Re: getch zonder ncurses

#7367
From: Staf Wagemakers
Date: Sat, 14 Sep 2002 13:47
55 lines
2578 bytes
In article <zfFg9.116724$8o4.16659@afrodite.telenet-ops.be>, Philip Paeps wrote:
> Michael De Nil <michael@aerythmic.be> wrote:
>> ik heb hier een klein progje waarbij ik cout & cin werk voor in- en uitvoer
>> van gegevens. nu zoek ik naar een methode om een char te vullen met een
>> karakter dat ik intik. (zonder enter)
> 
<knip>
> 
> Misschien is het nog te vroeg in de ochtend, maar ik kan me niet echt een
> manier voor de geest halen om cin te gebruiken zonder enter-top...
>

cin lees van stdin, met termios.h kan je stdin beinvloeden. Als je de
"ICANON" flag van stdin weg haalt lees hij char per char. 

een voorbeeldje:

  #include <unistd.h>
  #include <termios.h>
  #include <stdio.h>
  #include <iostream.h>

  int main ()
  {
        struct termios old,newin;
        char c;
        int fd_in=fileno(stdin);
        tcgetattr(fd_in,&old);
        newin=old;
        newin.c_lflag &= ~ICANON;
        tcsetattr(fd_in,TCSANOW,&newin);
        puts("Type 'Q' om te stoppen");
	for(;;) {
	   cin >> c;
	   if(c=='Q') break;
	}
	tcsetattr(fd_in,TCSANOW,&old);
	exit(0);
  }

>> is er een manier om hierrond te werken, of zet ik het hele programma best
>> om naar ncurses ?
> 
> Ncurses is altijd goed om te hebben, vind ik.  Zelfs voor oer-simpele dingen
> heb ik graag (eenvoudig) totale controle over mijn interface.
> 

(n)curses biedt zeker meer mogelijkheden om op eenvoudige wijze toch een
mooie interfaces te maken...

-- 
Staf Wagemakers

email      : staf@patat.org
homepage   : http://staf.patat.org
Technical Details
Message-ID: <3d833df4$0$7108$4d4efb8e@news.be.uu.net>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-01!sn-xit-04!supernews.com!diablo.theplanet.net!diablo.netcom.net.uk!netcom.net.uk!newsfeed.online.be!bnewspeer00.bru.ops.eu.uu.net!bnewsifeed00.bru.ops.eu.uu.net!bnewspost00.bru.ops.eu.uu.net!emea.uu.net!news.be.uu.net!not-for-mail
References: <Pine.LNX.4.44.0209141212400.8919-100000@lisa.flex-it.be> <zfFg9.116724$8o4.16659@afrodite.telenet-ops.be>

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit
X-Google-Thread: fcea4,74d788623d8e3d20
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2002-09-14 07:18:52 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-01!sn-xit-04!supernews.com!diablo.theplanet.net!diablo.netcom.net.uk!netcom.net.uk!newsfeed.online.be!bnewspeer00.bru.ops.eu.uu.net!bnewsifeed00.bru.ops.eu.uu.net!bnewspost00.bru.ops.eu.uu.net!emea.uu.net!news.be.uu.net!not-for-mail
Newsgroups: be.comp.programming
From: Staf Wagemakers <stafwag@yahoo.com>
Subject: Re: getch zonder ncurses
References: <Pine.LNX.4.44.0209141212400.8919-100000@lisa.flex-it.be> <zfFg9.116724$8o4.16659@afrodite.telenet-ops.be>
Organization: Debian GNU/Linux (woody)
User-Agent: slrn/0.9.7.4 (Linux)
Date: 14 Sep 2002 13:47:33 GMT
Lines: 55
Message-ID: <3d833df4$0$7108$4d4efb8e@news.be.uu.net>
NNTP-Posting-Host: ppp-62-235-201-76.tiscali.be
X-Trace: 1032011253 news.be.uu.net 7108 62.235.201.76
X-Complaints-To: abuse@be.uu.net