<acronym id="xonnx"></acronym>
      <td id="xonnx"></td>
    1. <pre id="xonnx"></pre>

      1. 專注電子技術學習與研究
        當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

        C++中用memcpy()函數復制字符串的正確方法

        作者:黃石磊   來源:本站原創   點擊數:  更新時間:2014年03月05日   【字體:
        //對字符最容易忽視的是字符串結尾會默認添加一個不可見的‘0\’
        //因此用memcpy()函數對字符串復制時容器一定要多申請一個字節。
        //如:char* p1="copy";要想把其copy到另一個空間中必須申請5Byte的空間:
        //做法:char *p2=(char*)melloc(5);memcpy(p2,p1,4);;p2[5]='0\';至此完成復制;
        #include "stdafx.h"
        #include "string.h"
        #include "malloc.h"
         
         int Findsub(char *all,char *sub)
        {
           int count=0;
           int len1=strlen(sub);
         
           char *buffer=(char *)malloc(len1+1);//中間量內存的申請
         
           while(*(all+len1-1)!='\0')
           {
             memcpy(buffer,all,len1);//截取,存入buffer
        buffer[len1]='\0';    
        if(strcmp(buffer,sub)==0)
        {
          count++;
          all+=len1;
          //all++;
        }
        else
        {
              all++;
        }
           }
         
           free(buffer);
           return count;
         

        }

        int _tmain(int argc, _TCHAR* argv[])
        {
         
        char *a="aaaabaaaaaabaa";
        char *b="aba";
            int len=Findsub(a,b);
            printf("------------%d\n",len);
        return 0;
        }

        關閉窗口

        相關文章

        欧美性色欧美精品视频,99热这里只有精品mp4,日韩高清亚洲日韩精品一区二区,2020国自产拍精品高潮