/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
getch funktion
Fra : Søren Schimkat


Dato : 24-09-02 14:11

Hey

Har brug for en 'getch' lignende funktion - men jeg vil ikke bruge
'curses.h'. Nogen der har et tip?

-Søren


 
 
Leo Laursen (24-09-2002)
Kommentar
Fra : Leo Laursen


Dato : 24-09-02 15:05

Søren Schimkat <schimkat@musik.auc.dk>:

> Har brug for en 'getch' lignende funktion - men jeg vil ikke bruge
> 'curses.h'. Nogen der har et tip?

Kan du ikke bruge getchar fra "stdio.h"

int getchar(void);

Returværdien svarer til en unsigned char; men cast'et til int for at
kunne returnere EOF. (-1 tror jeg)

Leo
--
gleemites, n.:
   Petrified deposits of toothpaste found in sinks.
      -- "Sniglets", Rich Hall & Friends

Christian Hemmingsen (24-09-2002)
Kommentar
Fra : Christian Hemmingsen


Dato : 24-09-02 17:59

Leo Laursen <ll_news@stofanet.dk> writes:

> Søren Schimkat <schimkat@musik.auc.dk>:
>
> > Har brug for en 'getch' lignende funktion - men jeg vil ikke bruge
> > 'curses.h'. Nogen der har et tip?
>
> Kan du ikke bruge getchar fra "stdio.h"
>
> int getchar(void);
>
> Returværdien svarer til en unsigned char; men cast'et til int for at
> kunne returnere EOF. (-1 tror jeg)

Man kan sagtens bruge getchar() (eller getc(FILE*)), men(!) man er nødt
til at ændre på terminalens egenskaber sådan at den ikke vente på at
brugeren trykker på RETURN.
Hvordan kan du se her:
http://www.erlenstar.demon.co.uk/unix/faq_4.html#SEC49

--
Christian Hemmingsen

Byrial Jensen (24-09-2002)
Kommentar
Fra : Byrial Jensen


Dato : 24-09-02 20:18

Christian Hemmingsen <postmaster@hemmingsen.nospam.kampsax.k-net.dk> skrev:
> Leo Laursen <ll_news@stofanet.dk> writes:
>> Søren Schimkat <schimkat@musik.auc.dk>:
>>
>> > Har brug for en 'getch' lignende funktion - men jeg vil ikke bruge
>> > 'curses.h'. Nogen der har et tip?

Jo, hvis du fortæller hvad du vil, hvorfor curses ikke kan bruges,
og hvilket styresystem det skal være til.

>> Kan du ikke bruge getchar fra "stdio.h"
>>
>> int getchar(void);
>>
>> Returværdien svarer til en unsigned char; men cast'et til int for at
>> kunne returnere EOF. (-1 tror jeg)
>
> Man kan sagtens bruge getchar() (eller getc(FILE*)), men(!) man er nødt
> til at ændre på terminalens egenskaber sådan at den ikke vente på at
> brugeren trykker på RETURN.

Det kommer da an på hvad Søren mener med en "getch-lignende" funktion.
getch() i curses kan afhængig af diverse indstillinger være:
- linje- eller tegn-orienteret (med unix: kig på tcsetattr)
- blokerende eller ikke-blokerende (med unix: kig på f.eks. select)

getch() i ncurses kan også samle diverse tastaturkode-sekvenser til
enkelte koder for funktionstaster og andre specialtaster på et
tastatur. Det kan f.eks. slang også gøre. slang har i øvrigt også en
rimelig udmærket curses-emuleringsmode.

Søren Schimkat (26-09-2002)
Kommentar
Fra : Søren Schimkat


Dato : 26-09-02 07:50

Byrial Jensen wrote:
> Christian Hemmingsen <postmaster@hemmingsen.nospam.kampsax.k-net.dk> skrev:
>
>>Leo Laursen <ll_news@stofanet.dk> writes:
>>
>>>Søren Schimkat <schimkat@musik.auc.dk>:
>>>
>>>
>>>>Har brug for en 'getch' lignende funktion - men jeg vil ikke bruge
>>>>'curses.h'. Nogen der har et tip?
>>>
>
> Jo, hvis du fortæller hvad du vil, hvorfor curses ikke kan bruges,
> og hvilket styresystem det skal være til.
>


I og for sig irelevant - men - men... Jeg kan ikke bruge curses da jeg
har brug for at holde størrelse på den binære nede / antallet af
dynamisk linkede libs nede.

Programmet skal kunne compilere / køre på alt hvad der bare ligner unix
/ linux / BSD og lign.


-Søren

>
>>>Kan du ikke bruge getchar fra "stdio.h"
>>>
>>>int getchar(void);
>>>
>>>Returværdien svarer til en unsigned char; men cast'et til int for at
>>>kunne returnere EOF. (-1 tror jeg)
>>
>>Man kan sagtens bruge getchar() (eller getc(FILE*)), men(!) man er nødt
>>til at ændre på terminalens egenskaber sådan at den ikke vente på at
>>brugeren trykker på RETURN.
>
>
> Det kommer da an på hvad Søren mener med en "getch-lignende" funktion.
> getch() i curses kan afhængig af diverse indstillinger være:
> - linje- eller tegn-orienteret (med unix: kig på tcsetattr)
> - blokerende eller ikke-blokerende (med unix: kig på f.eks. select)
>
> getch() i ncurses kan også samle diverse tastaturkode-sekvenser til
> enkelte koder for funktionstaster og andre specialtaster på et
> tastatur. Det kan f.eks. slang også gøre. slang har i øvrigt også en
> rimelig udmærket curses-emuleringsmode.



Søren Schimkat (26-09-2002)
Kommentar
Fra : Søren Schimkat


Dato : 26-09-02 07:45

Øhh.. naturligvis.

Det er også de skide man sider... alene det at finde rundt i dem kræver
den lille raket-ingeniør-eksamen.

mvh Søren



Leo Laursen wrote:
> Søren Schimkat <schimkat@musik.auc.dk>:
>
>
>>Har brug for en 'getch' lignende funktion - men jeg vil ikke bruge
>>'curses.h'. Nogen der har et tip?
>
>
> Kan du ikke bruge getchar fra "stdio.h"
>
> int getchar(void);
>
> Returværdien svarer til en unsigned char; men cast'et til int for at
> kunne returnere EOF. (-1 tror jeg)
>
> Leo



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste