●與字串型的拷貝函式類似的記憶體拷貝函式
memmove的模擬函式
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <iostream>
void *my_memmove(void *dst,const void *src,size_t num)//記憶體拷貝函式模擬實作
{
assert(dst!=NULL);
assert(src!=NULL);
if( dst>src&&dst<src+num)
{
const char*src_=(char*)src+num-1;
char*dst_=(char*)dst+num-1;
while(num>0)
{
*dst_=*src_;
dst_--;
src_--;
num--;
}
}
else
{
const char*src_=(char*)src;
char*dst_=(char*)dst;
while(num>0)
{
*dst_=*src_;
dst_++;
src_++;
num--;
}
}
}
int main()
{
char dst[32]="asdfghjkl";
int len=strlen(dst);
my_memmove(dst,dst+3,len);
printf("%s",dst);
return 0;
}
該函式實作了庫函式中的memmove函式,總之還是有一些難的,對指標的操作有一定的要求,若對指標不是很熟,就很難搞了,
```cpp
在這里插入代碼片
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/187844.html
標籤:其他
上一篇:2020淘寶雙十一快速刷金幣工具
