---
title: "Problem i C"
type: "forum-thread"
url: "https://www.webforum.nu/amne/c-cpp/143333-problem-i-c"
topic: "C/C++"
topic_url: "https://www.webforum.nu/amne/c-cpp"
author: "puritan"
published: "2006-03-03T12:27:03.000Z"
updated: "2006-03-09T20:46:56.000Z"
replies: 6
views: 622
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/c-cpp/143333-problem-i-c"
---

# Problem i C

## #1 — puritan, 2006-03-03T12:27Z

Till den som vet...

Kör Slackware och gcc kompilatorn och vill kunna läsa in från tangenterna för att kunna köra en robot.

koden som jag verkligen ansåg skulle funka är följande

char c;
while(1)
{
c = getchar();
sen en switchsats
där cases styr funktionsanropen till roboten
default stannar roboten
}

Prolbemet ligger i getchar() för den tar inte in från tangenterna  enbart utan echo:ar och kräver sen ett radavslut för att exekveras, naturligtvis kan man "fulkoda" och sätta ett radavslut men det innebär att jag inte kan hålla inne tangenten för att köra roboten framåt.

Någon som har några förslag eller behöver mer info, bara ropa till...

MvH
Puritan

Permalänk: https://www.webforum.nu/p/143333

## #2 — GunnarD, 2006-03-03T12:41Z

Tänk på att getchar() inte returnerar en char utan en int.

Eller som det står i man sidan för getchar()

> **man getchar skrev:**
>
> int getchar(void);
> 
> getchar() is equivalent to getc(stdin).
> fgetc() reads the next character from  stream  and  returns  it  as  an unsigned char cast to an int, or EOF on end of file or error.

Permalänk: https://www.webforum.nu/p/1776555

## #3 — puritan, 2006-03-03T14:02Z

Men det är inte problemet, problemet är att den egentligen inte lyssnar på tangentbordet, dvs den väntar på enter, vilken den inte borde göra, har implementerat en funktion utan buffring men det hjälper inte.

Kanske måste jag härka mig in i nån form av listener men som sagt lite utanför min kunskapscirkel.

Ngn annan som har förslag?

MvH
Puritan

Permalänk: https://www.webforum.nu/p/1776579

## #4 — luna, 2006-03-03T20:43Z

en lösning är att du använder dig av ncurses, då kan du även få mer *terminal-liknande* utskrifter.
<http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/>

Permalänk: https://www.webforum.nu/p/1776718

## #5 — puritan, 2006-03-06T09:15Z

Hej!

Tackar för det snabba svaret, jag har nu försökt använda ncurses men har ett konstigt problem, 
ncurses.h existerar och includeras utan problem, men ingen av functionerna däri tillåts vid kompilering...

Ngra nya förslag?

Mvh
Puritan

Permalänk: https://www.webforum.nu/p/1777418

## #6 — puritan, 2006-03-06T12:42Z

Problemet löst, ni kan låsa denna tråd.

Mvh
Puritan

Permalänk: https://www.webforum.nu/p/1777496

## #7 — luna, 2006-03-09T20:46Z

Bra att det löste sig.
(Ncurses kan ibland lösa många små roliga problem man ställs inför.)

Du får nog ta och stänga tråden själv... (Acceptera svar)

Permalänk: https://www.webforum.nu/p/1778896

---

Tråden på webben: https://www.webforum.nu/amne/c-cpp/143333-problem-i-c
