当前位置:首页 » 编程语言 » c语言读取按键输入
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言读取按键输入

发布时间: 2023-03-15 17:40:46

❶ 在c语言中如何实现用键盘输入一个字符串,并打印出来

在C语言中实现用键盘输入一个字符串,并打印出来的解决方法如下:

1、首先定义一个字符串数组,如你可以给字符串100个数组空间。如图括号内数字即为你定义的数组大小。

(1)c语言读取按键输入扩展阅读:

字符数组的输出:

(1)用putchar()或printf()的‘%c’格式符对数组进行字符赋值。例如,对于数组a[10]:用putchar()赋值:

for(i=0;i<10;i++)

a[i]=putchar();

用printf()赋值:

for(i=0;i<10;i++)

printf("%c",a[i]);

输出结果为:

c program[2]

(2)用printf()的'%s'格式对数组赋值。还是对于数组a[10];

printf("%s",a);

输出结果为:

c program

参考资料来源:

网络-char

网络-字符数组

❷ c语言中怎样输入和读取方向键

在用C语言写出的“贪吃蛇”小游戏中,可以自编以下这个intokey( )函数,用来获取方向键值以便控制蛇的拐弯。库函数kbhit( )是检测是否有按键被按下,Dir是代表方向的变量,整型变量flag用来获取键值,1、2、3、4分别表示方向的上下左右。要#include<conio.h> .

void intokey( )

{ int flag;

if ( kbhit( ) ) //判断有键按下时才执行下面操作

{ flag = getch( ); //用flag来获取键值

if (flag==224) flag = getch( ); //值为224是方向键,要再次获取才行

if (flag==72 && dir != 2) dir = 1; //方向键为“上”且原方向不为下时,让dir=1.

if (flag==80 && dir != 1) dir = 2; //方向键为“下”且原方向不为上时,让dir=2.

if (flag==75 && dir != 4) dir = 3; //方向键为“左”且原方向不为右时,让dir=3.

if (flag==77 && dir != 3) dir = 4; //方向键为“右”且原方向不为左时,让dir=4.

}

}

注:上下左右键按下后都会产生2个值,第一个是224,第二个才分别是72、80、75和

77.所以要用库函数getch( )两次获取键值。如果是ASDW来控制拐弯,flag可以定义为

字符型,获取一次键值即可。

❸ c语言中怎样输入和读取方向键

在C代码中可设置如下自编的intokey( )函数,用以接收方向键值。库函数kbhit( )是检测是否有按键被按下,库函数getch( )是读取键盘按键值的,不需按回车,也不回显。dir是代表方向的变量,根据不同的方向键值,让dir取1到4这四个不同的值。其它的程序段就可根据dir的值让东西朝某个方向移动。方向键按下后会产生2个值,第一个是224,另一个分别为上下左右的72、80、75、77,因此要读取2次值来判断。要包含#include<conio.h> .

void intokey( )

{ int flag;

if ( kbhit( ) ) //判断有键按下时才执行下面的操作

{ flag = getch( ); //用flag来获取键值

if (flag==224)

{ flag = getch( ); //值为224时表示按下了方向键,要再次获取才行

if ( flag==72 && dir != 2 ) dir = 1;

if ( flag==80 && dir != 1 ) dir = 2;

if ( flag==75 && dir != 4 ) dir = 3;

if ( flag==77 && dir != 3 ) dir = 4;

}

if (flag==13)

{ while( 1 ) if ( ( flag=getch( ) )==13 ) break ; }

}

}

注:这个函数来源于某些“贪吃蛇”的代码,略有修改,足可获取方向键值。其中的1、2、 3、4分别对应着上下左右。当flag获得键值后,分两种情况:一是flag=224,此时再次获取键值以判断输入的是4个方向中的哪一个;二是flag=13,表示按下回车键,我们就执行循环,程序暂停,等待再次输入回车,程序继续运行。

❹ 如何在C语言中读取键盘输入的快捷键

命令行输入是不响应很多组合键的
所以要想读取快捷键,那么就要从系统层面读取
而不是用库函数
在Windows下可以用key hook
在linux下可以读取input event

❺ C语言键盘内容读取

综观TC提供的键盘输入函数,以bioskey函数为最合适选择。

int bioskey(int cmd);
使用BIOS中断0x16执行各种键盘操作。参数cmd确定实际得操作。
bioskey的返回值由cmd决定:
0:低8位非0,返回在队列中等待的下一输入键的ascii字符或键盘的下一次按键输入的ascii字符。低8位为0,则高8位为扩展键盘码。

1:测试是否有可读的输入键,为0,则没有。Ctrl_break 返回0xffff(-1)。否则,返回下一个输入键。键值还保存,供下次cmd=0时bioskey调用返回。

2:请求当前换档键状态。状态值由下列值相或(or)得到:

位7 0x80 Insert ON
6 0x40 Caps ON
5 0x20 Numlock ON
4 0x10 Scroll Lock ON
3 0x08 ALT
2 0x04 CTRL
1 0x02 <- SHIFT
0 0x01 -> SHIFT

为了方便起见,我们首先定义一些常用功能键的键值。

#define ReturnKey 0x0d
#define ESC 0x1b
#define Back 0x08

#define LeftArrow 0x4b00
#define RightArrow 0x4d00
#define UpArrow 0x4800
#define DownArrow 0x5000

#define PageUp 0x4900
#define PageDown 0x5100
#define Home 0x4700
#define End 0x4f00

#define F1 0x3b00
#define F2 0x3c00
#define F3 0x3d00
#define F4 0x3e00
#define F5 0x3f00
#define F6 0x4000
#define F7 0x4100
#define F8 0x4200
#define F9 0x4300
#define F10 0x4400

int GetKey(void)
{
int tKey;
while(bioskey(1)==0)
;

tKey=bioskey(0);
if ((tKey & 0xff)!=0)
tKey=tKey & 0xff;
return tKey;

}

以上代码,可基本完成常用程序键盘读取操作。

但我们必须注意到,对于函数GetKey的定义中,bioskey函数的使用,我们只是对cmd=0,1的情况进行了处理,而对于cmd=2,也即换档键状态没有进行处理,因而诸如ctrl-home等等GetKey不能进行相应的接收,如果确实需要,须继续扩充GetKey函数。

❻ 在C语言中通常使用 什么函数获得用户从键盘上的输入

scanf函数
scanf("%d",&a); 输入一个整数赋值给a;
scanf("%f",&a); 输入一个浮点数赋值给a;
scanf("%c",&a); 输入一个字符赋值给a;
scanf("%s",%a); 输入一个字符串赋值给a;