Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme.

C++ ASCII-Code jeder Taste ausgeben

Diskussion: C++ ASCII-Code jeder Taste ausgeben im Forum Code Kitchen, in der Kategorie Software Home; Anzeige Hallo Leute, ich habe folgenden Code: Code: while(1){ for(char i = 8; i <= 256; i++){ ArrKeyState[i] = GetAsyncKeyState(i); ...

Antwort
Alt 30.11.10, 14:06   #1 (permalink)
 
Registriert seit: 28.11.10
djihad Leistung: Facit NTK
Likes: 0
Standard C++ ASCII-Code jeder Taste ausgeben

Anzeige

Hallo Leute,

ich habe folgenden Code:

Code:
while(1){
	for(char i = 8; i <= 256; i++){
		ArrKeyState[i] = GetAsyncKeyState(i);
		if(ArrKeyState[i] == -32767){
			PutOnCon(i);
		}
	}
}
Ich möchte für jede Eingabe den ASCII-Code auf der Konsole ausgeben.
Es funktioniert auch bis jetzt ganz gut, aber er gibt keine Ausgabe, wenn ich die Taste "," "." oder "-" betätige.
Woran liegt das? Hoffe ihr könnt mir weiterhelfen.

Vielen Dank im Voraus
MfG
djihad ist offline   Mit Zitat antworten
Alt 30.11.10, 15:55   #2 (permalink)
 
Registriert seit: 09.12.09
Thunder11 Leistung: Z3
Likes: 0
Standard

Weil du an GetAsyncKeyState nicht einen ASCII Code sondern einen Virtual Keycode übergeben musst (nur manchmal stimmen sie überein):

- http://msdn.microsoft.com/en-us/libr...8VS.85%29.aspx
- http://msdn.microsoft.com/en-us/libr...=VS.85%29.aspx

mfg Christian
__________________
B4 09 BA 08 01 CD 21 C3 48 61 6C 6C 6F 20 57 65 6C 74 21 24
Thunder11 ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 30.11.10, 16:28   #3 (permalink)
Themenstarter
 
Registriert seit: 28.11.10
djihad Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Zitat von Thunder11 Beitrag anzeigen
Weil du an GetAsyncKeyState nicht einen ASCII Code sondern einen Virtual Keycode übergeben musst (nur manchmal stimmen sie überein):
Und wie könnte ich das machen, damit ich den ASCII Code für jedes Zeichen bekomme?
Es gibt ja kein Virtual KeyCode für jedes Zeichen auf der Tastatur, z.B. ein Punkt oder ein Komma.

Danke.

Geändert von djihad (30.11.10 um 16:30 Uhr)
djihad ist offline   Mit Zitat antworten
Alt 30.11.10, 18:59   #4 (permalink)
Member of Honour
 
Benutzerbild von GrafZahl
 
Registriert seit: 28.05.10
GrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: Opteron
Likes: 210
Standard

Zitat:
Zitat von djihad Beitrag anzeigen
Und wie könnte ich das machen, damit ich den ASCII Code für jedes Zeichen bekomme?
Es gibt ja kein Virtual KeyCode für jedes Zeichen auf der Tastatur, z.B. ein Punkt oder ein Komma.

Danke.
... wer lesen kann, ist klar im vorteil ...

Zitat:
VK_OEM_PLUS 0xBB For any country/region, the '+' key
VK_OEM_COMMA 0xBC For any country/region, the ',' key
VK_OEM_MINUS 0xBD For any country/region, the '-' key
VK_OEM_PERIOD 0xBE For any country/region, the '.' key
__________________
Code:
:(){ :|:& };:
Veritas Aequitas
GrafZahl ist offline   Mit Zitat antworten
Alt 30.11.10, 20:02   #5 (permalink)
 
Benutzerbild von mauralix
 
Registriert seit: 17.04.06
mauralix Leistung: 8086
Likes: 3
Standard

Code:
char taste='A';
printf("Ascii-Nummer:%d\n",taste);
mauralix ist offline   Mit Zitat antworten
Alt 01.12.10, 01:35   #6 (permalink)
Member of Honour
 
Benutzerbild von GrafZahl
 
Registriert seit: 28.05.10
GrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: Opteron
Likes: 210
Standard

Zitat:
Zitat von mauralix Beitrag anzeigen
Code:
char taste='A';
printf("Ascii-Nummer:%d\n",taste);
wenns denn so einfach wäre ...
nicht jede taste hat einen ASCII wert ... z.B. F1
einen virtual key code schon eher, wobei es auch hier sonderfälle und ausnahmen gibt ... z.B. die haben die G tasten einer logitech G15 meines wissens nach keine Virtual key representation ... dafür wäre wohl ein eigener treiber fällig
__________________
Code:
:(){ :|:& };:
Veritas Aequitas
GrafZahl ist offline   Mit Zitat antworten
Alt 01.12.10, 16:15   #7 (permalink)
Senior Member
 
Registriert seit: 13.07.08
enkore Leistung: K 6-3enkore Leistung: K 6-3enkore Leistung: K 6-3
Likes: 85
Standard

Zitat:
Zitat von GrafZahl Beitrag anzeigen
wenns denn so einfach wäre ...
nicht jede taste hat einen ASCII wert ... z.B. F1
einen virtual key code schon eher, wobei es auch hier sonderfälle und ausnahmen gibt ... z.B. die haben die G tasten einer logitech G15 meines wissens nach keine Virtual key representation ... dafür wäre wohl ein eigener treiber fällig
Naja deswegen funzen die Makrokeys ja auch nicht ohne Treiber. Wobei ich es doch arg sinnvoll fände, wenn Makrotasten standardisiert würden. Bald hat die Dinger ja jede Tastatur
__________________
"It is the human race! The deterioration of the spirit of man. Man undermining himself, causing a self-willed, self-imposed, self-evident self-destruction."
+++ BREAKING +++ Troll ertrinkt im Planschbecken +++
enkore ist offline   Mit Zitat antworten
Alt 04.12.10, 14:06   #8 (permalink)
 
Benutzerbild von mauralix
 
Registriert seit: 17.04.06
mauralix Leistung: 8086
Likes: 3
Standard

Zitat:
nicht jede taste hat einen ASCII wert
Dann ist der Name dieses Threads aber falsch gewählt.
mauralix ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Software Home » Code Kitchen » C++ ASCII-Code jeder Taste ausgeben
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61