青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

大龍的博客

常用鏈接

統計

最新評論

strcpy與memcpy以及strncpy

1. strcpy函數

   strcpy提供了字符串的復制。即strcpy只用于字符串復制,并且它不僅復制字符串內容之外,還會復制字符串的結束符。

   函數原型及實現:

[c-sharp] view plaincopy
  1. char* strcpy(char* strDst, const char* strSrc)      
  2. {  
  3.     assert((strDst != NULL) && (strSrc != NULL));  
  4.     char* address = strDst;   
  5.     while((*strDst++ = *strSrc++) != '/0');  
  6.     return address;  
  7.   }  
  

 

  注意:

  1. 該函數會連同字符串的結束字符'/0'一起拷貝到字符數組中,故字符數組的長度應該至少是字符串的長度加1。

  例:

  char str[] = "123456";

  這里str是一個字符數組,它存放了一個字符串"123456",由于字符串還有一個結束符"/0",所以此數組的長度為7而不是6。

 

   char *str = "123456";  //該字符串的長度為6(字符串以字符'/0'結尾,不計入字符串長度)

   char   dst[7];   //字符數組的長度必須至少為字符長度加1,如6+1=7。

   strcpy(dst, str);

  2. 該函數會拷貝字符串的內容直至遇到第一個字符值為0的字符(第一個字符值為0的字符也會被拷貝),故如果一個字符串或字符數組含

     有大量的值為0的數據,則不宜用該函數進行拷貝操作,可用memcpy函數。

 

2. memcpy函數

   memcpy提供了一般內存的復制。即memcpy對于需要復制的內容沒有限制,因此用途更廣。

   該函數將一個大小為size的內存段的值拷貝到另一內存段中。

   其實現如下:

[c-sharp] view plaincopy
  1. void *memcpy(void *memTo, const void *memFrom, size_t size)     
  2. {  
  3.     assert((memTo != NULL) && (memFrom != NULL)); //memTo和memFrom必須有效  
  4.     char *tempFrom = (char *)memFrom;             //保存memFrom首地址  
  5.      char *tempTo = (char *)memTo;                  //保存memTo首地址  
  6.     while(size -- > 0)                //循環size次,復制memFrom的值到memTo中  
  7.         *tempTo++ = *tempFrom++ ;   
  8.     return memTo;   
  9. }  
  

 

 

3. strcpy與memcpy的區別

  3.1 復制的內容不同。

     strcpy只能復制字符串,而memcpy可以復制任意內容,例如字符數組、整型、結構體、類等。

  3.2 復制的方法不同。

     strcpy不需要指定長度,它遇到字符串結束符"/0"便結束。memcpy則是根據其第3個參數決定復制的長度。

  3.3 用途不同。

     通常在復制字符串時用strcpy,而需要復制其他類型數據時則一般用memcpy。

 

4. strncpy

strncpy的實現如下

[c-sharp] view plaincopy
  1. char *strncpy(char *dst, const char *src, size_t count)  
  2. {  
  3.         assert((dst != NULL) && (src != NULL));  
  4.         char *tmp = dst;  
  5.   
  6.         while (count-- && (*dst++ = *src++) != '/0')  
  7.         {  
  8.                 /* nothing */;  
  9.         }  
  10.   
  11.         return tmp;  
  12. }  

 

該函數用于拷貝count個字符。

 

注意:

1. count一定要小于dst的大小。

2.調用完該函數后一定要加上一句:dst[count] = '/0';否則不安全,如strlen等函數要求參數必須是以'/0'結尾的字符串。

   因為當count小于src的大小時,src的結束字符'/0'并不會被拷貝,故應該為dst加上一個結束符。

例:

[c-sharp] view plaincopy
  1. char *str = "123456";  
  2.   
  3. char dst[7];  
  4.   
  5. int count = 6;  
  6.   
  7. strncpy(dst, str, count);  //count=6一定要小于dst的長度(7)。  
  8.   
  9. dst[count] = '/0'; 

posted on 2012-03-28 20:01 大龍 閱讀(418) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            销魂美女一区二区三区视频在线| 国产精品成人观看视频免费| 91久久精品美女| 欧美中文字幕视频| 久久精品综合网| 可以免费看不卡的av网站| 久久综合色婷婷| 国产一区二区三区精品欧美日韩一区二区三区| 国产九九精品| 伊人精品视频| 亚洲精品日日夜夜| 亚洲综合电影| 免费日本视频一区| 一本久久综合亚洲鲁鲁| 亚洲一区久久久| 久久久久久久久久久久久久一区 | 国产欧美不卡| 一区二区三区在线免费播放| 亚洲精品一区二区三区婷婷月| 亚洲一区二区黄| 久久综合九色综合久99| 亚洲人成网站影音先锋播放| 亚洲一区二区三区免费在线观看| 欧美一区二区网站| 欧美精品v日韩精品v韩国精品v| 国产九区一区在线| 亚洲麻豆国产自偷在线| 久久国产一二区| 亚洲精品国产精品乱码不99| 欧美一级专区免费大片| 欧美精品自拍偷拍动漫精品| 国产一区二区丝袜高跟鞋图片| 亚洲精品免费看| 久久精品亚洲精品| 一区二区动漫| 欧美大片免费观看| 激情成人在线视频| 亚洲自拍电影| 亚洲精品在线观看免费| 久久久久久尹人网香蕉| 国产日韩综合| 午夜国产精品视频| 亚洲伦理自拍| 欧美国产成人在线| 在线播放中文字幕一区| 欧美在线亚洲一区| 中文欧美在线视频| 欧美日本国产| 亚洲精品乱码视频| 欧美成人精品一区二区三区| 午夜精品视频一区| 国产精品有限公司| 亚洲欧美视频一区| 一区二区三区四区在线| 欧美日韩精品高清| 99视频精品在线| 亚洲三级电影在线观看| 欧美国产日韩a欧美在线观看| 亚洲国产婷婷香蕉久久久久久| 乱人伦精品视频在线观看| 久久久久国产精品人| 狠狠88综合久久久久综合网| 久久久久国产一区二区| 久久久久久国产精品一区| 在线视频亚洲欧美| 欧美日韩激情小视频| 中文国产成人精品| 亚洲最新色图| 国产精品欧美久久久久无广告| 亚洲一区免费| 亚洲男人av电影| 国产亚洲精品aa| 美女91精品| 欧美高清在线一区二区| 亚洲视频免费看| 亚洲在线播放| 很黄很黄激情成人| 欧美电影免费观看| 欧美日韩不卡在线| 亚洲欧美成人综合| 欧美中文在线字幕| 亚洲三级毛片| 亚洲午夜激情在线| 国产丝袜一区二区| 亚洲第一福利社区| 欧美性做爰毛片| 久久精品亚洲国产奇米99| 久久在线免费观看视频| 一本到高清视频免费精品| 亚洲一区黄色| 18成人免费观看视频| 亚洲精品久久久一区二区三区| 国产精品久久久久久久久久久久久久| 午夜精品久久久久久久99热浪潮 | 欧美高清免费| 午夜精品一区二区三区在线播放| 欧美一区二区视频免费观看| 亚洲日本欧美在线| 亚洲欧美网站| 亚洲乱码精品一二三四区日韩在线 | 久久精品国产第一区二区三区最新章节| 激情久久综合| 一区二区高清在线观看| 在线观看av不卡| 中文av字幕一区| 亚洲激情视频网站| 亚洲欧美日韩国产中文在线| 亚洲日本欧美| 久久九九有精品国产23| 午夜精品久久久久久99热| 欧美大片在线观看一区| 久久噜噜噜精品国产亚洲综合| 欧美日本在线一区| 免费在线视频一区| 国产亚洲精品高潮| 亚洲一区二区视频在线| 99国产精品99久久久久久| 久久伊人一区二区| 久久九九久久九九| 国产精品你懂得| 一本色道久久综合亚洲精品不 | 亚洲视频在线观看免费| 亚洲国产一区二区三区a毛片| 午夜久久久久| 亚洲欧美另类在线观看| 欧美日本一区二区视频在线观看| 美女视频黄a大片欧美| 国产日韩一区二区三区在线| 亚洲视频一区二区在线观看 | 亚洲小少妇裸体bbw| 欧美福利视频| 亚洲成人自拍视频| 亚洲国产精品电影| 免费成人高清| 欧美激情91| 日韩午夜精品| 欧美日韩在线电影| aa国产精品| 亚洲一区二区不卡免费| 欧美午夜电影在线| 亚洲视频在线观看视频| 午夜精品久久久久久久| 国产日产精品一区二区三区四区的观看方式| 99pao成人国产永久免费视频| 一本色道久久综合一区| 欧美午夜国产| 午夜亚洲福利| 噜噜噜躁狠狠躁狠狠精品视频| 在线不卡中文字幕| 免费成人美女女| 亚洲精品123区| 亚洲视频导航| 国产女主播视频一区二区| 欧美影院一区| 欧美激情黄色片| 99国产精品| 国产精品天天摸av网| 久久成人免费视频| 欧美电影在线观看| 亚洲深爱激情| 国产亚洲激情在线| 开元免费观看欧美电视剧网站| 亚洲电影下载| 亚洲欧美经典视频| 在线日韩视频| 欧美三级电影一区| 久久岛国电影| 99精品国产热久久91蜜凸| 久久精品日韩欧美| 亚洲精品国产精品乱码不99按摩 | 亚洲美女黄色片| 欧美一区日韩一区| 亚洲国产精品视频| 国产精品久久二区| 久久综合亚州| 亚洲视频日本| 欧美韩国一区| 欧美在线高清| 日韩视频在线一区| 国产亚洲一区精品| 欧美日韩蜜桃| 久久免费视频网站| 欧美在线一级va免费观看| 亚洲国产精品久久久久久女王| 欧美特黄一级大片| 久久综合久久综合久久综合| 亚洲免费成人av| 欧美成人精品三级在线观看| 亚洲自拍偷拍色片视频| 亚洲韩国精品一区| 国产午夜精品一区理论片飘花 | 午夜精品免费视频| 91久久亚洲| 黄色精品一二区| 国产精品黄视频| 欧美精品黄色| 美日韩精品免费观看视频| 亚洲女性裸体视频| 一区二区三区视频在线| 亚洲激情综合|