C
[C] 058 strcpy() 내부흐름 이해하기
qkrwngus
2021. 1. 25. 19:43
Desc :
Source Code :
#include <stdio.h>
#define KOREA "대한민국"
char* My_strcpy(char* dest, const char* src);
void main()
{
char string[100];
My_strcpy(string, KOREA);
puts(string);
}
char* My_strcpy(char* dest, const char* src)
{
if (dest == (int)NULL || src == (int)NULL) // 모든 문자열의 길이가 0 --> null값 반환,
{
if (*dest != (int)NULL)
{
*dest = (int)NULL; // dest를 null로 설정한 후 (dest에 복사되니까)
}
return NULL;
}
do
{
*dest++ = *src; // src의 값을 dest에 복사
} while (*src++ != (int)NULL); // 끝이 아니면 반복문 또 실행
return dest;
}
Result :