ex00 - ft_strcpy, ft_strncpy
string.h
의
strcpy
,
strncpy
와 커스텀 함수와의 차이점
기존 내장 함수들은
src
의 크기 보다
dst
의 크기가 더 작으면
Segment fault
를 발생 시킨다.
하지만 커스텀 함수에서는 함수를 사용할 수 없어 예외처리를 해주지 않았다.
예외 처리를 하려면
src
의 크기보다
dst
의 크기가 더 작다는 것을 확인해야함
그러기 위해서는 배열의 길이를 재야함
그런데 초기화 하지 않은 배열에는 쓰레기 값이 들어있는 데 카운팅을 어떻게 하지…?
strncpy
의 경우 입력 값 n이
dest
의 크기보다 크면 경고를 발생 시킨다.
gcc W~ 로는 에러가 발생함
그래서 예외 상황에 대해서는 입력을 하지 않는 다는 전제 하에 문제를 해결함
안전한 상황만을 가정하고 코드를 짬