• <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>

            twzheng's cppblog

            『站在風(fēng)口浪尖緊握住鼠標(biāo)旋轉(zhuǎn)!』 http://www.cnblogs.com/twzheng

              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              136 隨筆 :: 78 文章 :: 353 評(píng)論 :: 0 Trackbacks

            關(guān)于strcpy()與memcpy()比較

            舉例:

            {

            byte a[4];// 每一個(gè)字節(jié)賦數(shù)值類型

            byte c1[4];

            byte c2[4];

            memcpy(c1, a, sizeof(byte)*4); //正確使用

            strcpy((char*)(byte*)c2, (char*)(byte*)a);//錯(cuò)誤調(diào)用

            }

            函數(shù)原型

               strcpy

               extern char *strcpy(char *dest,char *src);

               #include <string.h>

               功能:把src所指由NULL結(jié)束的字符串復(fù)制到dest所指的數(shù)組中

               說(shuō)明:src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。

               返回指向dest的指針



              memcpy

              extern void *memcpy(void *dest,void *src,unsigned int count);

              #include <string.h>

               功能:由src所指內(nèi)存區(qū)域復(fù)制count個(gè)字符串到dest所指內(nèi)存區(qū)域.

               說(shuō)明:src和dest所指內(nèi)存區(qū)域不能重疊,函數(shù)返回指向dest的指針.函數(shù)原型

             

            關(guān)于memcpy的用法

            作用:在dest處拷貝src處的字節(jié),并以count來(lái)計(jì)算需要拷貝的字節(jié)數(shù)量,進(jìn)行內(nèi)存的拷貝。

            參數(shù): dest:新的存貯區(qū)的開始部位   src:需要拷貝的開始部位    count:需要拷貝的字節(jié)數(shù)備注:dest,src,它們都是從各自的地址處進(jìn)行寫入,如果是p而不是&p,那么獎(jiǎng)會(huì)取得p的值(地址),在該值的地址處進(jìn)行讀出或?qū)懭搿?/span>

            例:  

            int* intPoint = new int(3333);  

            int* intPoint1;  

            //在intPoint1的地址處寫入intPoint地址處的值,也就是intPoint指針值。 

            memcpy( &intPoint1, &intPoint, 4 );

            //使intPoint1指向了intPoint. 或   int* intPoint = new int(3333);

            cout << *intPoint1 << endl;

            可以看出 strcpy() 是處理的字符串(遇零結(jié)束),memcpy() 是處理一個(gè)緩沖區(qū)(void*類型的),而我們的內(nèi)容中有數(shù)字0,而數(shù)字0又是字符串的結(jié)尾字符 ' \0' 的數(shù)字表現(xiàn),字符串拷貝是遇到0就結(jié)束,所以,如果要拷貝的緩沖區(qū)如果是非字符串那么就盡量用memcpy(),這樣可以避免出錯(cuò)的可能。

            posted on 2007-06-13 20:57 譚文政 閱讀(2099) 評(píng)論(0)  編輯 收藏 引用 所屬分類: C/C++
            成人国内精品久久久久影院| 青青草原综合久久大伊人精品| 久久久精品久久久久久| 国产亚州精品女人久久久久久 | 日韩精品久久久肉伦网站 | 欧美久久亚洲精品| 狠狠色丁香久久婷婷综合蜜芽五月| 性高朝久久久久久久久久| 久久久无码精品亚洲日韩京东传媒 | 国产成人精品久久亚洲高清不卡 | 国内精品久久久久久不卡影院| 亚洲精品蜜桃久久久久久| 大美女久久久久久j久久| 久久人妻AV中文字幕| 26uuu久久五月天| 亚洲狠狠婷婷综合久久蜜芽| 国内精品久久久久久久影视麻豆| 久久综合香蕉国产蜜臀AV| 开心久久婷婷综合中文字幕| 久久国产一区二区| 久久国产精品无码一区二区三区| 三级片免费观看久久| 中文字幕亚洲综合久久2| 成人综合伊人五月婷久久| 97精品国产97久久久久久免费| 久久综合给合综合久久| 色偷偷888欧美精品久久久| 国产亚洲精品久久久久秋霞| 久久精品免费全国观看国产| 国产—久久香蕉国产线看观看 | 久久久久久精品免费看SSS| 久久精品亚洲男人的天堂| 国产精品久久久久久影院| 无码人妻久久一区二区三区 | 国产精品久久久久久久| 亚洲国产精品无码久久一区二区| 亚洲欧美日韩久久精品| 亚洲国产成人久久综合区| 久久国产美女免费观看精品 | 伊人久久综在合线亚洲2019 | 日韩精品久久久久久|