LZ````我刚才找到我以前的专门用来调试使用getch()获得的键值的数字值及其字符形式的程序,我刚才又把它重新修改了一下.现在把它送给你,你以后要用getch获取键值的时候可能用得住,用它你可以发现很多东西.
#include <stdio.h>
#include <conio.h> /* getch所在头文件 */
#define NL putchar('\n')
#define MID -32
#define F1_F10 0
#define CTRL_Z 26
/* 将getcH获得的值用整数和字符的形式输出用空格分开 */
#define CHAR_INT_C(c) printf ("%c", c ) , putchar(' ') , printf ("%d", c ) , NL
/* 程序为了读取所以键值,所以单独按任何键都不回退出,但是如果连续按2次CTRL+Z(EOF)那么程序回才退出 */
#define EXIT(c) ( c == CTRL_Z ) ? ( ( ( c=getch() ) == CTRL_Z ) ? (1):(0) ) : (0)
int main(void)
{
char c ;
while ( 1 )
{
c = getch(); /* 开始读取 */
CHAR_INT_C(c) ; /* 输出2种值*/
/* MID 为中键盘 F1_10 为F1-F10的键``因为它们都是一个键有2个键值 */
if ( c == MID || c == F1_F10 )
{
c=getch() ; /* 读取第二个键值 */
CHAR_INT_C(c) ; /* 输出第二个键值 */
}
NL ;
if ( EXIT(c) ) break ; /* 退出请连续按2次CTRL+Z */
}
return 0 ;
}
这个是EXE:
#include <stdio.h>
#include <conio.h> /* getch所在头文件 */
#define NL putchar('\n')
#define MID -32
#define F1_F10 0
#define CTRL_Z 26
/* 将getcH获得的值用整数和字符的形式输出用空格分开 */
#define CHAR_INT_C(c) printf ("%c", c ) , putchar(' ') , printf ("%d", c ) , NL
/* 程序为了读取所以键值,所以单独按任何键都不回退出,但是如果连续按2次CTRL+Z(EOF)那么程序回才退出 */
#define EXIT(c) ( c == CTRL_Z ) ? ( ( ( c=getch() ) == CTRL_Z ) ? (1):(0) ) : (0)
int main(void)
{
char c ;
while ( 1 )
{
c = getch(); /* 开始读取 */
CHAR_INT_C(c) ; /* 输出2种值*/
/* MID 为中键盘 F1_10 为F1-F10的键``因为它们都是一个键有2个键值 */
if ( c == MID || c == F1_F10 )
{
c=getch() ; /* 读取第二个键值 */
CHAR_INT_C(c) ; /* 输出第二个键值 */
}
NL ;
if ( EXIT(c) ) break ; /* 退出请连续按2次CTRL+Z */
}
return 0 ;
}
这个是EXE:
val_c.rar
(4.61 KB)
女施主``我给你``送茶来了```师太``你就从了老衲吧``
代码本天成~~~妙头偶得之```