Firestone Posted October 18, 2013 Report Share Posted October 18, 2013 Witam wszystkich.Dostałem zadanie polegające na napisaniu programu, który rozpozna wciśnięte klawisze i wyświetli ich nazwy w konsoli - m.in. duże, małe litery, spacja, enter, cyfry.Problem pojawia się przy rozpoznaniu klawisza F1 oraz strzałek, nigdzie nie mogę znaleźć ich wartości w tablicach Ascii.Oto co do tej pory napisałem:#include <iostream>#include <cstdio>#include <conio.h>using namespace std;int main (void){ char ch; cout << "Podaj znak lub litere do sprawdzenia"<< endl; ch=getch(); if (ch >= 65 && ch <= 90) cout <<"Wielka litera"; if (ch >= 48 && ch <= 57) cout <<"Cyfra"; if (ch >= 97 && ch <= 122) cout <<"Mala litera"; if (ch == 32) cout <<"Spacja"; if (ch == 13) cout <<"Enter"; if (ch == 27) cout <<"Esc"; if (ch == 126) cout <<"~"; getch(); return 0;}Czy wie ktoś jak obejść ten problem ze strzałkami? Z góry dzięki Link to comment Share on other sites More sharing options...
Sevard Posted October 19, 2013 Report Share Posted October 19, 2013 Specjalne klawisze są reprezentowane przez dwa znaki. Zazwyczaj pierwszy to 0x00. Musisz więc w tym przypadku użyć getch() dwukrotnie. Tu masz tablicę kodów dla znaków specjalnych. Link to comment Share on other sites More sharing options...
MrYoshi Posted January 30, 2014 Report Share Posted January 30, 2014 Problem rozwiązany, więc temat zamykam.W razie potrzeby otwarcia tematu, proszę o kontakt przez PW. Link to comment Share on other sites More sharing options...