컴파일은 정상적으로 잘 되는데,
정확히 9글자를 입력했을 때 왜 out of range가 출력되는지는 알겠는데 왜 끝자리가 정상적으로 출력되는지 궁금합니다.
ex ) abcdefghi 입력 ->arr배열에 abcdefghi\n 들어감.
->limit가 9이므로 arr[8]까지만 \n이 있는지 검사. ->outofrange를 출력하고, abcdefgh까지만 나온다.(i는 arr[8]에 0을 대입하는 과정에서 사라짐)
이게 제가 생각한 결과인데, 컴파일러에 돌려보면
abcdefghi -> out of range 라는 결과가 출력됩니다.
왜 그런 걸까요?? i가 안나와야 될텐데..
더 긴 문자열 ex)abcdefghijklmn... 을 입력해도 abcdefghi -> out of range 가 출력됩니다.
i == limit == 9 니까 for문 밖으로 나갔겠죠?
아 감사합니다! 답변이 많은 도움이 되었습니다.
댓글을 작성하려면 로그인해야 합니다.
kjy0349 5년 전
컴파일은 정상적으로 잘 되는데,
정확히 9글자를 입력했을 때 왜 out of range가 출력되는지는 알겠는데 왜 끝자리가 정상적으로 출력되는지 궁금합니다.
ex ) abcdefghi 입력 ->arr배열에 abcdefghi\n 들어감.
->limit가 9이므로 arr[8]까지만 \n이 있는지 검사. ->outofrange를 출력하고, abcdefgh까지만 나온다.(i는 arr[8]에 0을 대입하는 과정에서 사라짐)
이게 제가 생각한 결과인데, 컴파일러에 돌려보면
abcdefghi -> out of range 라는 결과가 출력됩니다.
왜 그런 걸까요?? i가 안나와야 될텐데..
더 긴 문자열 ex)abcdefghijklmn... 을 입력해도 abcdefghi -> out of range 가 출력됩니다.