Skocz do zawartości
Cyrul

Znaki Rozszerzone Ascii

Rekomendowane odpowiedzi

Witam mam problem mam zrobić programik który będzie wyświetlał znaki ASCII wklepane z klawiatury. Obajerowanie graficzne już wykombinowałem, znaki zwykłe jak i rozszerzone załatwia mi funkcja którą przedstawiam poniżej, no bo wiadomo że jak wcisne sobie strzałkę to musze to zczytać 2razy w postaci wartości 224 i np 72 w przypadku strzałki w góre. Z tym sobie poradziłem i działa, mam natomiast problem jak analizować że wciśnięty został ALT wogle nie mam pojęcia jak się do tego dobrać.

 

Poniżej podaje mój program:

#include<iostream.h>#include<conio.h>#include<stdio.h>int znak;void ExtChr(int *znak,int *ext){	*znak=getch();	if ((*znak==224)||(*znak==0)){  *znak=getch();  *ext=0;	}	else *ext=1;}void main(){	int ext;	int znak;	ExtChr(&znak,&ext);	cout<<znak<<endl;	cout<<ext<<endl;}

wdzięczny był bym za info ew. zapraszam na gg:2107813

Edytowane przez Cyrul

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

musisz zdaje sie skorzystać z jakieś funkcji mapującej klawiature pewnie w winapi jest cośtakiego , lub z przerywań klawiatury, ale to jużnie jest takie proste.

 

///

 

Jeśli to ma być coś związanego z polskimi znakami diakrytycznymi to może sie do tego zabrać tak że np: w tabeli asci jest tak:

 

litera  | org  | ogonek    a    |   97  |   165       c    |   99  |   134       e    |  101 |   169    l     |  108 |   136    o    |  111 |   162    s    |  115 |   152    n    |  110 |   228    z    |  120 |   171

i po sprawdzeniu czy został wpisany taki kod jak w tej trzeciej kolumnie ogonek można wywnioskować że został wciśniety Alt, ale to tylko znajdzie miejsce kiedy mamy do czynienia ze znakami diakrytycznymi bo w innym przypadku jest bez sensu.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

To ja mam problem o podobnym temacie. Chyba banalny wiec nie zakladam nowego topicu.

Jezyk to Turbo pascal. Chce napisac program, ktory bedzie korzystal z fukncji readkey. Nie wiem tylko jak zrobic zeby reagowal na strzalke do gory...

jesli chce np na enter to robie tak;

a:=readkey;

if a=#13 then write('dziala');

 

z tego co wiem strzalka w gore to 72 lub H, a jak

robie a:=readkey; if a:=#72 then write('dobrze');

to juz mi w programie tego nie wylapuje... :(

 

jak wiec nalezy to zrobic?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...