dkkim0122   3년 전

문제에서 말하는대로 배열을 새로 만들어서 원소들을 할당한 다음 출력했는데, 문제없이 돌아가긴 하는데 계속 틀렸다고 나오네요ㅠ

제가 놓친 게 있을까요?

greedev   3년 전

7번째 행의

char new_arr[160] = { 0 };

문자열에는 마지막에 널문자가 들어가니

최대 문자 길이 + 1로 선언하셔야 합니다.

크기를 161로 바꿔보세요

dkkim0122   3년 전

아 바로 해결되었네요 감사합니다!

제가 제대로 알지 못해서 그런데 

그렇다면 항상 문자열을 선언할 때는 최대문자길이 + 1 로 하는 것이 맞는 것인가요??

greedev   3년 전

특별한 목적(예를들면 boolean처럼 true/false로 저장하겠다는 등..)이 없으시다면

문자열 선언은 최대문자길이 +1 로 하셔야 잘 작동합니다.

맨 마지막 자리에 추가로 문자열의 끝을 알려줄 NULL값이 들어가기 때문이지요

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