📄 getcommand.lst
字号:
C51 COMPILER V8.08 GETCOMMAND 04/25/2008 15:44:36 PAGE 1
C51 COMPILER V8.08, COMPILATION OF MODULE GETCOMMAND
OBJECT MODULE PLACED IN GETCOMMAND.OBJ
COMPILER INVOKED BY: C:\Program Files\keil\C51\BIN\C51.EXE GETCOMMAND.C BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <stdio.h> //头文件
2
3 #define CNTLQ 0x11 //定义控制字符
4 #define CNTLS 0x13
5 #define DEL 0x7F
6 #define BACKSPACE 0x08
7 #define CR 0x0D
8 #define LF 0x0A
9
10 void getline (char idata *line, unsigned char n) //命令编辑函数
11 {
12 1 unsigned char cnt = 0;
13 1 char c;
14 1
15 1 do //循环读取输入的命令
16 1 {
17 2 if ((c = _getkey ()) == CR) //读入字符
18 2 c = LF;
19 2 if (c == BACKSPACE || c == DEL) //处理BACKSPACE键
20 2 {
21 3 if (cnt != 0)
22 3 {
23 4 cnt--; //减1
24 4 line--;
25 4 putchar (0x08); //回显backspace字符
26 4 putchar (' ');
27 4 putchar (0x08);
28 4 }
29 3 }
30 2 else if (c != CNTLQ && c != CNTLS) //忽略CNTL_Q字符和NTL_S字符
31 2 {
32 3 putchar (*line = c); //回显字符并保存
33 3 line++; //加1
34 3 cnt++;
35 3 }
36 2 } while (cnt < n - 1 && c != LF); //检查
37 1
38 1 *line = 0; //字符串结尾标志
39 1 }
40
41
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 101 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 4
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -