📄 1797 02 dat
字号:
unsigned char data head,end;
unsigned char data kb_buf[16];
unsigned char data flag[16];
bit insert(unsigned char a,unsigned char f) //插入缓冲区,F标记是否按下
{
if((end+1)%16==head)
return 0;
kb_buf[end]=a;
flag[end]=f;
end=(end+1)%16;
return 1;
}
void clr_buf()
{
head=end=0;
}
unsigned char exist(unsigned char mark) //判断是否第一次按下
{
unsigned char i=head;
while(i!=end)
{
if(kb_buf[i]==mark)
return i;
i=(i+1)%16;
}
return 255;
}
/*bit emputy()
{
return (head==end);
}
unsigned char get_end()
{
if(head!=end)
return kb_buf[(end-1+16)%16];
else
return 0;
}*/
unsigned char get_head_f()
{
return flag[head];
}
unsigned char get_head()
{
if(head!=end)
return kb_buf[head];
else
return 0;
}
void del_head()
{
head=(head+1)%16;
}
void set_flag(unsigned char dire)
{
flag[dire]=1;
}
unsigned char buf_length()
{
return (end+16-head)%16;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -