最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言中字符串常用函數(shù)strcat與strcpy的用法介紹

 更新時(shí)間:2013年07月11日 10:35:21   作者:  
以下是對C語言中字符串常用函數(shù)strcat與strcpy的使用方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以參考下
strcpy原型聲明:extern char *strcpy(char* dest, const char *src);
頭文件:#
include <string.h>
功能:把從src地址開始且含有NULL結(jié)束符的字符串復(fù)制到以dest開始的地址空間
說明:src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:

/**********************
 * C語言標(biāo)準(zhǔn)庫函數(shù)strcpy的一種典型的工業(yè)級(jí)的最簡實(shí)現(xiàn)
 * 返回值:目標(biāo)串的地址。
 * 對于出現(xiàn)異常的情況ANSI-C99標(biāo)準(zhǔn)并未定義,故由實(shí)現(xiàn)者決定返回值,通常為NULL。
 * 參數(shù):
 * strDestination 目標(biāo)串
 * strSource 源串
 ***********************/

 char *strcpy(char *strDestination,const char *strSource)
 {
   assert(strDestination!=NULL && strSource!=NULL);
   char *strD=strDestination;
   while ((*strD++=*strSource++)!='\0');
   return strDestination;
 }

 /*
 GNU-C中的實(shí)現(xiàn)(節(jié)選):
 */
 char* strcpy(char *d, const char *s)
 {
   char *r=d;
   while((*d++=*s++));
   return r;
 }
 /* while((*d++=*s++)); 的解釋:兩層括號(hào)是為了取賦值表達(dá)式的值,
       而賦值表達(dá)式的值為左操作數(shù),所以在復(fù)制NULL后,循環(huán)停止 */

strcat原型
extern char *strcat(char *dest,char *src);
用法
#include <string.h>
在C++中,則存在于<cstring>頭文件中。
功能
把src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。
說明
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:

//將源字符串加const,表明其為輸入?yún)?shù)
char *strcat(char *strDest, const char *strSrc)
{
  // 后文return address,故不能放在assert斷言之后聲明address
  char *address = strDest;
  assert((strDest != NULL) && (strSrc != NULL)); //對源地址和目的地址加非0斷言
  while(*strDest)             //是while(*strDest!='\0')的簡化形式
  {
    //若使用while(*strDest++),則會(huì)出錯(cuò),因?yàn)檠h(huán)結(jié)束后strDest還會(huì)執(zhí)行一次++,
    //那么strDest將指向'\0'的下一個(gè)位置。/所以要在循環(huán)體內(nèi)++;因?yàn)橐?strDest最后指
    //向該字符串的結(jié)束標(biāo)志'\0'。
    strDest++;
  }

  while(*strDest++ = *strSrc++)
  {
    NULL;             //該循環(huán)條件內(nèi)可以用++,
  }                   //此處可以加語句*strDest='\0';無必要
  return address;     //為了實(shí)現(xiàn)鏈?zhǔn)讲僮?,將目的地址返?BR>}

相關(guān)文章

  • Qt(C++)調(diào)用工業(yè)相機(jī)Basler的SDK使用示例

    Qt(C++)調(diào)用工業(yè)相機(jī)Basler的SDK使用示例

    這篇文章主要介紹了Qt(C++)調(diào)用工業(yè)相機(jī)Basler的SDK使用示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • C/C++中虛函數(shù)詳解及其作用介紹

    C/C++中虛函數(shù)詳解及其作用介紹

    這篇文章主要介紹了C/C++中虛函數(shù)詳解及其作用介紹,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • C++為什么要用指針而不直接使用對象?

    C++為什么要用指針而不直接使用對象?

    今天小編就為大家分享一篇關(guān)于C++為什么要用指針而不直接使用對象?,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • C 語言中strstr函數(shù)實(shí)例詳解

    C 語言中strstr函數(shù)實(shí)例詳解

    這篇文章主要介紹了C 語言中strstr函數(shù)實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • 深入理解C語言的new[]和delete[]

    深入理解C語言的new[]和delete[]

    new和delete既是C++中的關(guān)鍵字也是一種特殊的運(yùn)算符。這篇文章主要介紹了C++的new和delete詳解,需要的朋友可以參考下
    2021-09-09
  • C++中函數(shù)模板與類模板的簡單使用及區(qū)別介紹

    C++中函數(shù)模板與類模板的簡單使用及區(qū)別介紹

    這篇文章介紹了C++中的模板機(jī)制,包括函數(shù)模板和類模板的概念、語法和實(shí)際應(yīng)用,函數(shù)模板通過類型參數(shù)實(shí)現(xiàn)泛型操作,而類模板允許創(chuàng)建可處理多種數(shù)據(jù)類型的類,文章還討論了模板的關(guān)鍵區(qū)別、注意事項(xiàng)以及它們在實(shí)際編程中的應(yīng)用,感興趣的朋友一起看看吧
    2025-03-03
  • C語言位運(yùn)算符的具體使用

    C語言位運(yùn)算符的具體使用

    位運(yùn)算是指按二進(jìn)制進(jìn)行的運(yùn)算。在系統(tǒng)軟件中,常常需要處理二進(jìn)制位的問題。本文就詳細(xì)的介紹一下,感興趣的可以了解一下
    2021-09-09
  • c++可變參數(shù)模板使用示例源碼解析

    c++可變參數(shù)模板使用示例源碼解析

    這篇文章主要為大家介紹了c++可變參數(shù)模板使用示例源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • 淺談C++STL之雙端隊(duì)列容器

    淺談C++STL之雙端隊(duì)列容器

    deque雙端隊(duì)列容器與vector很類似,采用線性表順序存儲(chǔ)結(jié)構(gòu)。但與vector區(qū)別,deque采用分塊的線性存儲(chǔ)結(jié)構(gòu)來存儲(chǔ)數(shù)據(jù),每塊的大小一般為512B,將之稱為deque塊,所有的deque塊使用一個(gè)map塊進(jìn)行管理,每個(gè)map數(shù)據(jù)項(xiàng)記錄各個(gè)deque塊的首地址。
    2021-06-06
  • C++實(shí)現(xiàn)快捷店會(huì)員管理系統(tǒng)

    C++實(shí)現(xiàn)快捷店會(huì)員管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)快捷店會(huì)員管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03

最新評(píng)論

高清| 布拖县| 宁强县| 盐源县| 贵定县| 板桥市| 泽州县| 宿迁市| 汨罗市| 衡南县| 盐源县| 浦江县| 庆云县| 衡阳市| 龙州县| 芦山县| 瓮安县| 南召县| 双辽市| 鄂伦春自治旗| 西藏| 新绛县| 通化市| 中宁县| 乌什县| 仙桃市| 万年县| 北辰区| 宽甸| 邵阳市| 翁牛特旗| 阿拉善左旗| 镇平县| 宣威市| 丹东市| 沐川县| 莱芜市| 南木林县| 奉节县| 喀喇沁旗| 溆浦县|