talesajs   2년 전

답은 맞긴 맞았는데요

왜 new char[i+1] 인가요??

[i]로하면 delete[] 부분에서 힙메모리 뭐라하면서 에러가 뜨더라구요


kdk8361   2년 전

배열은 0번부터 시작해서 그렇습니다. 크기가 i개인 배열을 선언하면 0~i-1까지죠.

gallopsys   2년 전

string이 아닌 char 배열의 경우 NULL Character('\0')까지를 문자열의 끝으로 인식하기 때문입니다.

따라서 입력받을 문자열의 길이가 총 100이라고 하면 NULL까지 포함한 101로 잡아야하기 때문에 new char[i + 1]이 되어야 합니다.

댓글을 작성하려면 로그인해야 합니다.