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

📄 str.lst

📁 基于STC51通过GPS自主定位导航FAT文件系统程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.20   STR                                                                   11/03/2007 17:08:49 PAGE 1   


C51 COMPILER V7.20, COMPILATION OF MODULE STR
OBJECT MODULE PLACED IN .\output\str.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE src\lib\str.c LARGE ORDER INCDIR(.\src\include) DEBUG OBJECTEXTEND PRINT(.\
                    -output\str.lst) OBJECT(.\output\str.obj)

line level    source

   1          //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&字符串函数库&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
   2          //*文件名称:str.c
   3          
   4          //*文件作用:字符串函数库
   5          
   6          //*文件作者:翟  鹏
   7          
   8          //*创建日期:2004年5月
   9          //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
  10          
  11          
  12          
  13          #include <include.h>
  14          
  15          
  16          
  17          //********************************************************************************************************
             -***************
  18          //函数作用:判断目的串是否等于给定的串
  19          //参数说明:dest---目的串  src---给定的串
  20          //注意事项:
  21          //返回说明:如果相等返回1
  22          //********************************************************************************************************
             -***************
  23          uchar str_compare(uchar *dest, uchar *src)
  24          {
  25   1              while(*src)if((*dest++)!=(*src++))return 0;
  26   1              if(*dest)return 0;//如果目的串还没有完 说明不相等
  27   1              return 1;
  28   1      }
  29          
  30          //********************************************************************************************************
             -***************
  31          //函数作用:判断目的串是否包含给定的串
  32          //参数说明:dest---目的串  src---给定的串
  33          //注意事项:
  34          //返回说明:如果相等返回1
  35          //********************************************************************************************************
             -***************
  36          uchar str_comprise(uchar *dest, uchar *src)
  37          {
  38   1              while(*src)if((*dest++)!=(*src++))return 0;
  39   1              return 1;
  40   1      }
  41          
  42          //********************************************************************************************************
             -***************
  43          //函数作用:把给定的串拷贝到目的串中
  44          //参数说明:dest---目的串  src---给定的串
  45          //注意事项:
  46          //返回说明:返回目的串
  47          //********************************************************************************************************
             -***************
  48          void str_copy(uchar *dest, uchar *src)
C51 COMPILER V7.20   STR                                                                   11/03/2007 17:08:49 PAGE 2   

  49          {
  50   1              while((*dest++ = *src++)!=0);
  51   1      }
  52          
  53          //********************************************************************************************************
             -***************
  54          //函数作用:把给定的串添加到目的串末尾
  55          //参数说明:dest---目的串  src---给定的串
  56          //注意事项:
  57          //返回说明:返回目的串
  58          //********************************************************************************************************
             -***************
  59          void str_cat(uchar *dest, uchar *src)
  60          {
  61   1              while(*dest)dest++;
  62   1              while((*dest++ = *src++)!=0);
  63   1      }
  64          
  65          //********************************************************************************************************
             -***************
  66          //函数作用:把给定的串拷贝到目的串中 直到发现给定字符为止 并添加结束符
  67          //参数说明:dest---目的串  src---给定的串
  68          //注意事项:
  69          //返回说明:返回目的串
  70          //********************************************************************************************************
             -***************
  71          void str_char_copy(uchar *dest, uchar *src, uchar ch)
  72          {
  73   1              while((*dest++ = *src++)!=ch);
  74   1              dest--;
  75   1              *dest=0;
  76   1      }
  77          
  78          //********************************************************************************************************
             -***************
  79          //函数作用:把给定的串拷贝到目的unicode串中
  80          //参数说明:dest---目的串  src---给定的串
  81          //注意事项:
  82          //返回说明:返回目的串
  83          //********************************************************************************************************
             -***************
  84          void str_unicode_copy(uint *dest, uchar *src)
  85          {
  86   1              while((*dest++ = *src++)!=0);
  87   1      }
  88          
  89          //********************************************************************************************************
             -***************
  90          //函数作用:计算字符串长度
  91          //参数说明:str---给定的串
  92          //注意事项:
  93          //返回说明:字节型长度数值
  94          //********************************************************************************************************
             -***************
  95          uint str_length(uchar *str)
  96          {
  97   1              uint i=0;
  98   1              
  99   1              while(str[i])i++;
 100   1              return i;
 101   1      }
 102          
C51 COMPILER V7.20   STR                                                                   11/03/2007 17:08:49 PAGE 3   

 103          //********************************************************************************************************
             -***************
 104          //函数作用:内存拷贝
 105          //参数说明:dest---目的串  src---给定的串  n---拷贝长度
 106          //注意事项:
 107          //返回说明:如果相等返回1
 108          //********************************************************************************************************
             -***************
 109          void mem_copy(uchar *dest, uchar *src, uint n)
 110          {
 111   1              while(n--)*dest++=*src++;
 112   1      }
 113          
 114          //********************************************************************************************************
             -***************
 115          //*函数作用:把整数转化成十进制串
 116          //*参数说明:dec---转化成的十进制串 n--要转化的整数
 117          //*注意事项:
 118          //*返回说明:无
 119          //********************************************************************************************************
             -***************
 120          void int_to_dec(uchar *dec, uint n)
 121          {       
 122   1              uchar i=0;
 123   1              uchar result;
 124   1              uint divisor, remainder;
 125   1      
 126   1              remainder=n;
 127   1              for(divisor=10000;divisor>0;divisor/=10)
 128   1              {
 129   2                      result=remainder/divisor;
 130   2                      remainder%=divisor;
 131   2                      if(result!=0 || divisor==1 || i>0)
 132   2                      dec[i++]=result+0x30;
 133   2              }
 134   1              dec[i]=0;
 135   1      }
 136          
 137          void long_to_dec(uchar *dec, ulong n)
 138          {       
 139   1              uchar i=0;
 140   1              uchar result;
 141   1              ulong divisor, remainder;
 142   1      
 143   1              remainder=n;
 144   1              for(divisor=1000000000;divisor>0;divisor/=10)
 145   1              {
 146   2                      result=remainder/divisor;
 147   2                      remainder%=divisor;
 148   2                      if(result!=0 || divisor==1 || i>0)
 149   2                      dec[i++]=result+0x30;
 150   2              }
 151   1              dec[i]=0;
 152   1      }
 153          
 154          //********************************************************************************************************
             -***************
 155          //函数作用:把hex字符串--转化为整数
 156          //参数说明:hex---给定的串
 157          //注意事项:
 158          //返回说明:返回是否成功
 159          //********************************************************************************************************
C51 COMPILER V7.20   STR                                                                   11/03/2007 17:08:49 PAGE 4   

             -***************
 160          static char xdigitvalue(uchar isdigit)//判断是否是十六进制数字
 161          {
 162   1              if(isdigit>='0' && isdigit<='9')return isdigit-'0';

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -