KILL.C
上传用户:xiantiandi
上传日期:2007-01-06
资源大小:21k
文件大小:1k
源码类别:

编辑器/阅读器

开发平台:

DOS

  1. #include <ctype.h>
  2. #include <stdio.h>
  3. #include <string.h>
  4. kill()
  5. {
  6. #include "teco.h"
  7. int tmp; /* Scratch variable     */
  8. int wrk; /* Another scratch var. */
  9. tmp=bufptx; /*  ...end of dlt */
  10. if (number < 1) while (1) { /* delete backwrd */
  11. if (!bufptx) goto axe;
  12. if (toascii(buffer[--bufptx]) == 13) {
  13. if (! number++) {
  14. if (toascii(buffer[bufptx+1]) == 10) {
  15. bufptx++;
  16. }
  17. goto axe;
  18. }
  19. }
  20. }
  21. if (number > 0) while (1) { /* delete forward */
  22. if (tmp+1 > bufptr) goto axe;
  23. if (toascii(buffer[++tmp]) == 13) {
  24. if (toascii(buffer[tmp+1]) == 10) ++tmp;
  25. if (! --number) goto axe;
  26. }
  27. }
  28. axe: memcpy(&buffer[bufptx+1],&buffer[tmp+1],bufptr-bufptx);
  29. bufptr=bufptr+bufptx-tmp; /* Show deleted.. */
  30. if (bufptr < bufptx) { /* Impose  sanity */
  31. bufptx=bufptr; /*  ...stop this  */
  32. }
  33. return; /* Eat more stuff */
  34. }