08. april 2003 - 12:11Der er
9 kommentarer og 1 løsning
udskrive noget andet end man taster i konsollen
Jeg er rimeligt ny i C. Jeg koder en console-application. Jeg vil gerne have det til at at gøre nogenlunde følgende: Når jeg trykker på en tast (altså skriver et bogstav eller et tal), skal den skrive noget andet i konsollen end bare den tast jeg trykker på. Eksempelvis trykker jeg på "f"-tasten, skal den ikke bare skrive "f" i konsollen, men fx. "fff"(altså 2 gange den tast jeg tastede(- vil så give "hhh" hvis jeg trykker på "h"-tasten)). Programmet skal desuden kunne modificeres så det skriver "f12" når jeg trykker på "f"-tasten (og i samme stil "h12" hvis jeg trykker på "h"-tasten).
Jeg forestiller mig lidt det kan gøres ved noget "printf()"- eller "putchar()"-noget.
Håber i kan hjælpe, på forhånd tak!
/jens87
p.s. jeg har kun givet 15 point, da jeg tror at det ikke er så svært hvis man er lidt vil til C :>
p.p.s jeg er ikke interesseret i svar i C++ eller C#, kun C ;)
int main() { char c; while ((c = getchar()) != EOF) printf("%c%c%c", c, c, c); }
Har det problem at den først læser tegnet efter du har trykket retur. Men at kunne læse tasterne direkte er platformafhængigt. Under UNIX (inklusiv Linux) kunne du kigge på curses.
arne får pointsne...det olennert skrev virker først når man trykker på entertasten (som han også nævnte...;-)
et andet problem er dog at få det til at virke med store bogstaver (S, H, G osv..;) - det havde jeg ikke spurgt om, men hvis i har nogle ideer til det kunne det være rart at høre :D
noget andet lidt "sjovt" er at det faktisk virker uden at jeg inkluderer conio.h...forstår du/i det?
Hvis det virker uden eksplicit include af conio.h så bør du få compile warnings medmindre conio.h inkluderes i en anden .H fil som du inkluderer (og det kan sagtens tænkes - sommetider er include hirakiet ret komplekst).
jeg tror at der er en anden headerfil der har funktionen eller inkluderer conio.h eller noget, for jeg får ingen compilerwarnings ;) - mht. koden, så prøver jeg det lige senere :>
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.