Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.1k views
in Technique[技术] by (71.8m points)

character - how to use the keys F1 to F10 in C code

I would like to know whether the user pressed F1 or F2 or F3 or F4 or F5 or ESC and perform an action after that but I don't know how to get these keys. Can anyone help?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

For Windows, there is the _getch function, which returns the bytes of a key code, one by one. You can get a function key that way, detecting it by the presence of certain codes: 0x00 or 0xe0 as shown in the example in [CC++] - how get arrow keys(correctly) using getch()?. When _getch returns one of those, the next byte is normally a virtual key code.

For making sense of those codes, the place to start reading is the Keyboard Input Reference, looking for virtual keys. Microsoft provides a list here: Virtual-Key Codes

Some people might advise starting with getch, but Microsoft provides this only for legacy use (does not recommend its use in new programs due to conflict with POSIX, and provides _getch as the alternative).


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...