1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          strcpy函數怎么用(C語言的strcpy函數如何使用)

          來源:互聯網轉載 時間:2024-05-11 00:37:20

          長度不受限制的字符串函數

          strcpy

          我們看看文檔是怎樣說的,如下

          strcpy文檔

          char*strcpy(char*destination,constchar*source);

          Copy string

          字符串拷貝(字符串復制)

          Copies the C string pointed bysourceinto the array pointed bydestination, including the terminating null character (and stopping at that point).

          復制由字符指針source指向的C字符串到另一個字符數組中,該字符數組字符指針destination指向

          To avoid overflows, the size of the array pointed bydestinationshall be long enough to contain the same C string assource(including the terminating null character), and should not overlap in memory withsource.

          為避免溢出,由destination指向的字符數組的大小需要足夠長,足夠包含住源字符串(包含'\0')

          綜上,可以知道

          1. 會將源字符串中的 '\0' 拷貝到目標空間,源字符串必須以 '\0' 結束。

          2. 目標空間必須足夠大,以確保能存放源字符串。

          怎么實現拷貝?
          intmain(){chararr1[]="abcdefghi";chararr2[]="bit";//把arr2的內容拷貝到arr1中//strcpy(arr1,arr2);//怎么拷貝?my_strcpy(arr1,arr2);printf("%s\n",arr1);return0;}
          實現

          斷言指針不為空是個好習慣~

          //char*my_strcpy(char*dest,char*src)//src加上const,為什么?因為我們只需要拷貝,不需要改動源字符串,防止發生修改,所以加上const修飾char*my_strcpy(char*dest,constchar*src){assert(dest!=NULL);assert(src!=NULL);while(*src!='\0'){*dest=*src;dest++;src++;}*dest=*src;//'\0'//返回目的空間的起始地址returndest;}

          源字符串拷貝到目的空間,尋找'\0',不是'\0'的就執行*dest = *src,把源字符賦值給目的空間,然后兩個指針都往后偏移,也就是都進行++,當*src為'\0'時,說明源字符串已經到結尾了,就退出這個循環,直接將'\0'賦值給*dest,最后返回dest

          可以進行優化,如下

          char*my_strcpy(char*dest,constchar*src){assert(dest!=NULL);assert(src!=NULL);//優化while(*src!='\0'){*dest++=*src++;}*dest=*src;//'\0'//返回目的空間的起始地址returndest;}

          當然還可以繼續優化,變得更加簡潔,直接將*dest++ = *src++作為判斷條件,同時還會執行操作,如下

          char*my_strcpy(char*dest,constchar*src){assert(dest!=NULL);assert(src!=NULL);//優化//拷貝src指向的字符串到dest指向的空間,包含'\0'char*rest=dest;while(*dest++=*src++){;}//返回目的空間的起始地址returnrest;}

          感謝各位的閱讀,以上就是“C語言的strcpy函數如何使用”的內容了,經過本文的學習后,相信大家對C語言的strcpy函數如何使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是本站,小編將為大家推送更多相關知識點的文章,歡迎關注!

          c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...

          2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...

          :喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...

          優先股的股息率是固定的嗎?優先股的股息率是固定的,一般在8%-15%內。股息率是股息與股票價格之間的比率。在投資實踐中,股息率是衡量企業是否具有投資價值的重要標尺之一。優先股股息一般是以一筆固定的金額或按股票票面價值一定比例確定的。優先股股息的分配一般不會根據公司經營情況而增減,但優先股可以先于普通股獲得股息,對公司來說,由于股息固定,它不影響公司的利潤分配。優先股股票實際上是股份有限公司的一種類...

          中國移動鐵通寬帶資費是多少?你好,中國移動鐵通寬帶資費2M一般是一年600元左右,提供你參考,準確需要咨詢當地營業廳。鐵通寬帶多少錢一年的?鐵通寬帶多少錢一個月據了解,鐵通寬帶基本都是包年的,沒有一個月的。從全年來看,一個月大概也就幾十塊。不過地方不同價格也會有所差異。各地市還有各自的附加優惠。鐵通和移動合并了,鐵通寬帶也就是移動寬帶。各地的資費政策是不一樣的,一般都是600元/年,可以上14個月...

          賣家承擔運費是指從賣家處發貨到買家處的大陸地區首次發貨運費,由賣家承擔,不需要買家支付。買家只需要支付所挑選商品的費用即可。1、淘寶買家在發現商品出現問題時一定要提前和賣家協定退貨的事宜,很多商品是用戶自己不會操作,從而導致的效果不佳,經過客服的指導之后,如果發現產品的效果有所改觀的話,就不需要再退貨了!如果效果實在不行的話,買家就需要申請退貨退款,在買家申請退款時,賣家就會告訴買家退貨的地址,并...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>