⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 getline.lst

📁 Keil中文版
💻 LST
字号:
C51 COMPILER V7.00  GETLINE                                                                01/04/2003 15:10:30 PAGE 1   


C51 COMPILER V7.00, COMPILATION OF MODULE GETLINE
OBJECT MODULE PLACED IN Getline.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE Getline.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /******************************************************************************/
   2          /*                                                                            */
   3          /*      GETLINE.C:  Line Edited Character Input                               */
   4          /*                                                                            */
   5          /******************************************************************************/
   6          
   7          #include <stdio.h>
   8          
   9          #define CNTLQ      0x11
  10          #define CNTLS      0x13
  11          #define DEL        0x7F
  12          #define BACKSPACE  0x08
  13          #define CR         0x0D
  14          #define LF         0x0A
  15          
  16          /***************/
  17          /* Line Editor */
  18          /***************/
  19          void getline (char idata *line, unsigned char n)  {
  20   1        unsigned char cnt = 0;
  21   1        char c;
  22   1      
  23   1        do  {
  24   2          if ((c = _getkey ()) == CR)  c = LF;    /* read character                 */
  25   2          if (c == BACKSPACE  ||  c == DEL)  {    /* process backspace              */
  26   3            if (cnt != 0)  {            
  27   4              cnt--;                              /* decrement count                */
  28   4              line--;                             /* and line pointer               */
  29   4              putchar (0x08);                     /* echo backspace                 */
  30   4              putchar (' ');
  31   4              putchar (0x08);
  32   4            }
  33   3          }
  34   2          else if (c != CNTLQ && c != CNTLS)  {   /* ignore Control S/Q             */
  35   3            putchar (*line = c);                  /* echo and store character       */
  36   3            line++;                               /* increment line pointer         */
  37   3            cnt++;                                /* and count                      */
  38   3          }
  39   2        }  while (cnt < n - 1  &&  c != LF);      /* check limit and line feed      */
  40   1        *line = 0;                                /* mark end of string             */
  41   1      }


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 + -