1,memcpy:
c和c++使用的内存拷贝函数,memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。
void *memcpy(void
*dest, const void *src, size_t n);
Linux中:
|
1
2
3
4
5
6
7
8
9
10
11
|
void* memcpy(void*dest,constvoid*src,size_tcount){ assert(dest!=NULL && src!=NULL); char* tmp=dest; const char* s=src; for(size_t i=0;i<count;i++){ tmp[i]=s[i];} return dest;} |
微软中
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
void* __cdecl memcpy(void* dst,const void* src,size_t count){ void*ret=dst;#if defined(_M_MRX000)||defined(_M_ALPHA)||defined(_M_PPC){ extern void RtlMoveMemory(void *,const void *,size_t count); RtlMoveMemory(dst,src,count);}#else /*defined(_M_MRX000)||defined(_M_ALPHA)||defined(_M_PPC)*//**copy from lower addresses to higher addresses*/while(count--){ *(char *)dst = *(char *)src; dst = (char *)dst+1; src = (char *)src+1;}#endif /*defined(_M_MRX000)||defined(_M_ALPHA)||defined(_M_PPC)*/return (ret);} |

被折叠的 条评论
为什么被折叠?



