memcpy_s 함수는
메모리를 복사해주는 함수이다.
memcpy_s(void * dest,size_t size, const void * source, size_t n);
dest : 복사 대상 버퍼
size : 복사 대상 버퍼 크기
source : 복사할 원본
n :복사할 바이트 수
반환 값
에러 번호
코드는 아래와 같다.
-코드-
int Strlen(char* _pC)
{
int Count = 0;
while (0 != _pC[Count])
{
Count += 1;
}
return Count;
}
배열의 크기를 알수있게 Strlen함수도 구현을 했다.
void Mymemcpy_s(void* _pCopy, int _CopySize, void* _pOriginal, int _OriginalSize)
{
int Count = 0;
char* Copy = (char*)_pCopy;
char* Original = (char*)_pOriginal;
if (_OriginalSize > _CopySize)
{
printf_s("복사 실패.\n");
while (_CopySize != Count)
{
Copy[Count] = 0;
Count += 1;
}
}
else
{
while (_OriginalSize != Count)
{
Copy[Count] = Original[Count];
Count += 1;
}
}
}
int main()
{
char TestCopy1[256];
char TestOriginal1[256] = "Assortrock";
char TestCopy2[512];
char TestOriginal2[256] = "YangYoungGwan";
Mymemcpy_s(TestCopy1, sizeof(TestCopy1), TestOriginal1, sizeof(TestOriginal1));
Mymemcpy_s(TestCopy2, sizeof(TestCopy2), TestOriginal2, sizeof(TestOriginal2));
printf_s("Original1 : %s \n", TestOriginal1);
printf_s("Copy : %s \n\n", TestCopy1);
printf_s("Original2 : %s \n", TestOriginal2);
printf_s("Copy : %s \n\n", TestCopy2);
}
'게임 프로그래밍 > C++ 기초' 카테고리의 다른 글
C++ 캐스트(static_cast / const_cast / dynamic_cast / reinterpret_cast) (0) | 2019.01.31 |
---|---|
C++ 증감연산자 (전,후) 구현 (0) | 2019.01.25 |
C++ memset 함수 구현 (0) | 2019.01.25 |
C++ 포인터 (0) | 2019.01.25 |
C++ WHILE ,DO WHILE (반복문) (0) | 2019.01.25 |