a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C > 正文

深入理解memmove()與memcpy()的區別以及實現方法

2020-02-24 14:27:25
字體:
來源:轉載
供稿:網友

memcpy和memmove的區別在實現方面,memcpy是一個直接拷貝,如果兩個指針重疊,結果是未知的,下文是武林技術頻道小編和大家分享的深入理解memmove()與memcpy()的區別以及實現方法,一起來了解一下吧!


代碼如下所示:

?

?

?


// MemMove.cpp : 定義控制臺應用程序的入口點。
//
#include "stdafx.h"
#include <iostream>
using namespace std;

?

?

?


void* memmove(void* dest, const void* src, size_t n)
{
?if (n <= 0)
?{
? cout << "Invalid count number." << endl;
?}
?if (dest == NULL || src == NULL)
?{
? cout << "The dest or src address is null." << endl;
?}
?if (dest == src)
?{
? cout << "The dest equals src." << endl;
?}
?if ((char*)dest <= (char*)src || (char*)dest >= (char*)src + n)
?{//對應圖中2,3,4三種情況,賦值過程中,src中未使用的不會被覆蓋
? char* de = (char*)dest;
? const char* sr = (const char*)src;
? while (n--)
? {
?? *de++ = *sr++;
? }
?}
?else
?{//對應圖中的第一種情況
? char* de = (char*)dest + n -1;
? const char* sr = (const char*)src + n - 1;
? while (n--)
? {
?? *de-- = *sr--;
? }
?}
?return dest;
}

?

?

?


void* memmcpy(void* dest, const void* src, size_t n)?
{?
? if (n <= 0)?
{?
? cout << "Invalid count number." << endl;?
}?
?if (dest == NULL || src == NULL)?
?{?
???? cout << "The dest or src address is null." << endl;?
?}?
?if (dest == src)?
?{?
?? cout << "The dest equals src." << endl;?
?}?
?char* de = (char*)dest;?
?const char* sr = (const char*)src;?
?while (n--)?
?{?
?? *de++ = *sr++;?
?}?
? return dest;?
}?

?

?

?


int _tmain(int argc, _TCHAR* argv[])
{
?char* p = "hello,world";?
?char dest[12] = {0};
?char *q = (char*)memmove(dest,p,5);
?cout << dest << endl;???
?cout << q << endl;?
?return 0;??
}

深入理解memmove()與memcpy()的區別以及實現方法就為各位朋友們介紹到這里了。大家可以在上文看到非常多優秀的文章,大家可以從武林技術頻道獲取全面的內容。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 逼逼av| 亚洲免费一 | 欧美在线一区二区三区 | 日本一级在线观看 | 成人欧美一区二区三区在线观看 | 岛国在线免费 | 国产精品久久精品 | 日韩欧美在线一区 | 99久久国产| 欧美成人一区二区三区片免费 | 蜜桃视频一区二区三区 | 欧美不卡一区二区 | 超碰97人人干 | 亚洲一区丝袜 | 亚洲精品无| 国产资源在线观看 | 国产精品久久久久久久蜜臀 | 黄色免费高清视频 | 亚洲成人精品在线 | 黄色免费电影网站 | 日韩国产欧美在线观看 | 999在线视频免费观看 | 色欧美综合 | 99re在线视频 | 亚洲成a人v欧美综合天堂麻豆 | 色又黄又爽网站www久久 | 欧美日韩成人影院 | 精品欧美一区二区三区精品久久 | 91国内外精品自在线播放 | 成人精品一区二区三区中文字幕 | 国产成人久久 | 国产一区二区三区免费在线 | 国产区 在线观看 | 伊人一区 | 欧美国产精品一区 | 亚洲一区欧美日韩 | 91麻豆精品国产91久久久更新时间 | 欧美一区二区激情三区 | 激情久久久 | 欧美一级做a爰片免费视频 在线不卡日韩 | 在线成人www免费观看视频 |