日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 芯聞號(hào) > 充電吧
[導(dǎo)讀]1.memmove 函數(shù)原型:void *memmove(void *dest, const void *source, size_t count) 返回值說明:返回指向dest的void *指針 參

1.memmove

函數(shù)原型:void *memmove(void *dest, const void *source, size_t count)

返回值說明:返回指向dest的void *指針

參數(shù)說明:dest,source分別為目標(biāo)串和源串的首地址。count為要移動(dòng)的字符的個(gè)數(shù)

函數(shù)說明:memmove用于從source拷貝count個(gè)字符到dest,如果目標(biāo)區(qū)域和源區(qū)域有重疊的話,memmove能夠保證源串在被覆蓋之前將重疊區(qū)域的字節(jié)拷貝到目標(biāo)區(qū)域中。

?

2.memcpy

?

函數(shù)原型:void *memcpy(void *dest,?const void *source,?size_t?count);

返回值說明:返回指向dest的void *指針

函數(shù)說明:memcpy功能和memmove相同,但是memcpy中dest和source中的區(qū)域不能重疊,否則會(huì)出現(xiàn)未知結(jié)果。

?

3.兩者區(qū)別

? 函數(shù)memcpy() ? 從source? 指向的區(qū)域向dest指向的區(qū)域復(fù)制count個(gè)字符,如果兩數(shù)組重疊,不定義該函數(shù)的行為。 ?
? 而memmove(),如果兩函數(shù)重疊,賦值仍正確進(jìn)行。

? memcpy函數(shù)假設(shè)要復(fù)制的內(nèi)存區(qū)域不存在重疊,如果你能確保你進(jìn)行復(fù)制操作的的內(nèi)存區(qū)域沒有任何重疊,可以直接用memcpy; ?
? 如果你不能保證是否有重疊,為了確保復(fù)制的正確性,你必須用memmove。

?memcpy的效率會(huì)比memmove高一些,如果還不明白的話可以看一些兩者的實(shí)現(xiàn):

?

?

Code

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->void?*memmove(void?*dest,?const?void?*source,?size_t?count)
{
?assert((NULL?!=?dest)?&&?(NULL?!=?source));
?char?*tmp_source,?*tmp_dest;
?tmp_source?=?(char?*)source;
?tmp_dest?=?(char?*)dest;
?if((dest?+?count ?{//?如果沒有重疊區(qū)域
???while(count--)
?????*tmp_dest++?=?*tmp_source++;
}
else
{?//如果有重疊
?tmp_source?+=?count?-?1;
?tmp_dest?+=?count?-?1;
?while(count--)
???*--tmp_dest?=?*--tmp;
}
return?dest;
}

?

?

?

Code

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->void?*memcpy(void?*dest,?const?void?*source,?size_t?count)
{
?assert((NULL?!=?dest)?&&?(NULL?!=?source));
?char?*tmp_dest?=?(char?*)dest;
?char?*tmp_source?=?(char?*)source;
?while(count?--)//不對(duì)是否存在重疊區(qū)域進(jìn)行判斷
???*tmp_dest?++?=?*tmp_source?++;
?return?dest;
}
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉