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

📄 内存及字符串操作篇.htm

📁 Linux C 语言函数
💻 HTM
📖 第 1 页 / 共 4 页
字号:
    <td valign="top"> <font face='宋体' size='2'> 返回参数dest的字符串起始地址。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 附加说明 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> 如果参数dest所指的内存空间不够大,可能会造成缓冲溢出(buffer 
      Overflow)的错误情况,在编写程序时请特别留意,或者用strncpy()来取代。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 范例 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> #include&lt;string.h&gt;<br>
      main()<br>
      {<br>
      char a[30]="string(1)";<br>
      char b[]="string(2)";<br>
      printf("before strcpy() :%s\n",a);<br>
      printf("after strcpy() :%s\n",strcpy(a,b));<br>
      }<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 执行 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> before strcpy() :string(1)<br>
      after strcpy() :string(2)<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top">  
      <div align="right"><br>
        <font face='宋体' size='2'><a name=linuxc58></a></font> </div>
    </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> <br>
        </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> <br>
      strcspn(返回字符串中连续不含指定字符串内容的字符数) </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 相关函数 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> strspn<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 表头文件 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> #inclued&lt;string.h&gt;<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 定义函数 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> size_t strcspn ( const char *s,const 
      char * reject);<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 函数说明 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> strcspn()从参数s字符串的开头计算连续的字符,而这些字符都完全不在参数reject 
      所指的字符串中。简单地说,若strcspn()返回的数值为n,则代表字符串s开头连续有n个字符都不含字符串reject内的字符。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 返回值 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> 返回字符串s开头连续不含字符串reject内的字符数目。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 范例 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> #include &lt;string.h&gt;<br>
      main()<br>
      {<br>
      char *str="Linux was first developed for 386/486-based pcs.";<br>
      printf("%d\n",strcspn(str," "));<br>
      printf("%d\n",strcspn(str,"/-"));<br>
      printf("%d\n",strcspn(str,"1234567890"));<br>
      }<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 执行 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> 5 /*只计算到“ ”的出现,所以返回“Linux”的长度*/<br>
      33 /*计算到出现“/”或“-”,所以返回到“6”的长度*/<br>
      30 /* 计算到出现数字字符为止,所以返回“3”出现前的长度*/<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top">  
      <div align="right"><br>
        <font face='宋体' size='2'><a name=linuxc59></a></font> </div>
    </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> <br>
        </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> <br>
      strdup(复制字符串) </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 相关函数 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> calloc,malloc,realloc,free<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 表头文件 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> #include&lt;string.h&gt;<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 定义函数 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> char * strdup( const char *s);<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 函数说明 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> strdup()会先用maolloc()配置与参数s字符串相同的空间大小,然后将参数s字符串的内容复制到该内存地址,然后把该地址返回。该地址最后可以利用free()来释放。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 返回值 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> 返回一字符串指针,该指针指向复制后的新字符串地址。若返回NULL表示内存不足。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 范例 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> #include&lt;string.h&gt;<br>
      main()<br>
      {<br>
      char a[]="strdup";<br>
      char *b;<br>
      b=strdup(a);<br>
      printf("b[ ]=\"%s\"\n",b);<br>
      }<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 执行 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> b[ ]="strdup"<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top">  
      <div align="right"><br>
        <font face='宋体' size='2'><a name=linuxc60></a></font> </div>
    </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> <br>
        </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> <br>
      strlen(返回字符串长度) </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 相关函数 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> <br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 表头文件 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> #include&lt;string.h&gt;<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 定义函数 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> size_t strlen (const char *s);<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 函数说明 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> strlen()用来计算指定的字符串s的长度,不包括结束字符"\0"。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 返回值 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> 返回字符串s的字符数。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 范例 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> /*取得字符串str的长度*/<br>
      #include&lt;string.h&gt;<br>
      main()<br>
      {<br>
      char *str = "12345678";<br>
      printf("str length = %d\n", strlen(str));<br>
      }<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 执行 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> str length = 8<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top">  
      <div align="right"><br>
        <font face='宋体' size='2'><a name=linuxc61></a></font> </div>
    </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> <br>
        </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> <br>
      strncasecmp(忽略大小写比较字符串) </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 相关函数 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> bcmp,memcmp,strcmp,strcoll,strncmp<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 表头文件 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> #include&lt;string.h&gt;<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 定义函数 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> int strncasecmp(const char *s1,const 
      char *s2,size_t n);<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 函数说明 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> strncasecmp()用来比较参数s1和s2字符串前n个字符,比较时会自动忽略大小写的差异。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 返回值 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> 若参数s1和s2 字符串相同则返回0。s1 若大于s2则返回大于0的值,s1若小于s2则返回小于0 
      的值。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 范例 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> #include&lt;string.h&gt;<br>
      main()<br>
      {<br>
      char *a="aBcDeF";<br>
      char *b="AbCdEf";<br>
      if(!strncasecmp(a,b))<br>
      printf("%s =%s\n",a,b);<br>
      }<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 执行 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> aBcDef=AbCdEf<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top">  
      <div align="right"><br>
        <font face='宋体' size='2'><a name=linuxc62></a></font> </div>
    </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> <br>
        </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> <br>
      strncat(连接两字符串) </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 相关函数 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> bcopy,memccpy,memecpy,strcpy,strncpy<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 表头文件 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> #inclue &lt;string.h&gt;<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 定义函数 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> char * strncat(char *dest,const 
      char *src,size_t n);<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 函数说明 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> strncat()会将参数src字符串拷贝n个字符到参数dest所指的字符串尾。第一个参数dest要有足够的空间来容纳要拷贝的字符串。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 返回值 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> 返回参数dest的字符串起始地址。<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 范例 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> #include &lt;string.h&gt;<br>
      main()<br>
      {<br>
      char a[30]="string(1)";<br>
      char b[]="string(2)";<br>
      printf("before strnact() :%s\n", a);<br>
      printf("after strncat() :%s\n", strncat(a,b,6));<br>
      }<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> 执行 </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> before strnact() : string(1)<br>
      after strncat() : string(1) string<br>
      </font> </td>
  </tr>
  <tr> 
    <td width="80" valign="top">  
      <div align="right"><br>
        <font face='宋体' size='2'><a name=linuxc63></a></font> </div>
    </td>
  </tr>
  <tr> 
    <td width="80" valign="top"> 
      <div align="right"><font face='宋体' size='2'> <br>
        </font> </div>
    </td>
    <td valign="top"> <font face='宋体' size='2'> <br>
      strncpy(拷贝

⌨️ 快捷键说明

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