1. 程式人生 > >C/C++--memcpy函式實現

C/C++--memcpy函式實現

注:沒有考慮記憶體重疊的情況

#include "stdafx.h"
#include <iostream>
#include <assert.h>

void* myMemCpy(void *pDst, const void *pSrc, size_t iCount)
{
	assert(NULL != pDst);
	assert(NULL != pSrc);

	char *pDT = (char*)pDst;
	const char *pST = (const char*)pSrc;

	while (iCount--) //沒考慮記憶體重疊
	{
		*pDT++ = *pST++;
	}
	return pDst;
}

int _tmain(int argc, _TCHAR* argv[])
{
	char src[10] = "hellhelo";
	char dst[10];
	myMemCpy(dst, src, strlen(src) + 1);
	std::cout << dst;
	getchar();
	return 0;
}