<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JUST DO IT ~

    我只想當(dāng)個程序員

    memcpy_s strncpy 目標(biāo)緩沖區(qū) 小于 實際緩沖區(qū)

     

    目標(biāo)緩沖區(qū) 小于 實際緩沖區(qū)

     

    char *name = "1234567890";
    char name2[6]={0};

    memcpy_s( name2 ,  sizeof(name2) ,  name, strlen(name));

    動態(tài)執(zhí)行失敗 (DEBUG ASSERTION FAILED !) 運行庫和調(diào)試庫都會提示出錯.

     

    注意:    指針sizeof( 指針 ) = 4  

    strncpy(name2,name ,sizeof(name) );             打印name2  1234 

     

    strncpy(name2,name ,strlen(name) );            打印name2   123456IOIPNUUY

    優(yōu)化這個語句,盡量拷貝內(nèi)容

    strncpy(name2,name ,   strlen(name)>sizeof(name2)? sizeof(name2): strlen(name)   );

     

     

    目標(biāo)緩沖區(qū) 小于 實際緩沖區(qū)

    strncpy(name2,name ,sizeof(name2)-1 );

    sizeof(name2)-1 ------------>讓最后一個name2字符留給\0 否則這個字符也被拷貝了.

     

     

     

    看一下LINUX下的兩個函數(shù)的源代碼,印象會更加深刻一些
    void * memcpy(void * dest,const void *src,size_t count)
    {
        char *tmp = (char *) dest, *s = (char *) src;
        while (count--)
            *tmp++ = *s++;
        return dest;
    }
    char * strcpy(char * dest,const char *src)
    {
        char *tmp = dest;
        while ((*dest++ = *src++) != '\0')
            /* nothing */;
        return tmp;
    }
    老實講,這兩個函數(shù)長得是很帥

     

     

    參考

    http://stackoverflow.com/questions/4593907/difference-between-strncpy-and-memcpy

     

    http://www.cppblog.com/Tim/archive/2011/04/02/143259.aspx

    posted on 2013-09-18 00:12 小高 閱讀(462) 評論(0)  編輯  收藏 所屬分類: C

    導(dǎo)航

    <2013年9月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    統(tǒng)計

    常用鏈接

    留言簿(3)

    隨筆分類(352)

    收藏夾(19)

    關(guān)注的blog

    手冊

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 日本免费网站在线观看| 成人人观看的免费毛片| 亚洲不卡AV影片在线播放| 亚洲乱理伦片在线观看中字| 成年女人视频网站免费m| 亚洲人成图片网站| 亚洲精品无码乱码成人| 久久九九久精品国产免费直播| 久久精品国产精品亚洲人人| 老司机免费午夜精品视频| 久久精品亚洲男人的天堂| 两个人看的www高清免费视频 | 久久国产色AV免费看| 亚洲一区二区三区电影| 免费黄色网址网站| 亚洲精品无码乱码成人| 久久免费观看国产99精品| 91久久亚洲国产成人精品性色 | 国产精品玖玖美女张开腿让男人桶爽免费看 | 18国产精品白浆在线观看免费| 在线亚洲精品自拍| 国产日韩一区二区三免费高清| 亚洲国产成人久久综合一| 黄页网址在线免费观看| 黑人大战亚洲人精品一区| 91大神免费观看| 亚洲国产欧美日韩精品一区二区三区| 亚洲第一页日韩专区| 人人揉揉香蕉大免费不卡| 久久亚洲精品国产亚洲老地址| 免费一级成人毛片| 免费人成在线观看网站品爱网| 亚洲精品二三区伊人久久| 亚洲精品无码你懂的网站| 131美女爱做免费毛片| 久久亚洲欧美国产精品| 国产V亚洲V天堂A无码| 性色av免费观看| 在线观看免费无码专区| 午夜在线a亚洲v天堂网2019| 亚洲日韩中文字幕在线播放|