dlwngud24   4년 전

원래 100글자 제한이라 str[101], fgets(str,101,stdin)으로 해서 통과했는데

혹시 몰라서 숫자를 위에 처럼 3과 11로 바꿔봤는데 맞더라고요...

fgets가 입력받은 글자를 10글자씩 잘라서 받아온다고 해도 

str크기가 3이라 오류가 날 줄 알았는데 성공하니까 왜 성공했는지 이해가 잘 안되네요 ㅠㅠ 

djm03178   4년 전

배열의 범위를 침범한다고 해서 반드시 문제가 생기는 것은 아닙니다. Undefined behavior, 즉 정의되지 않은 행동이기 때문에, 정답이 그대로 나온다고 해도 이상할 것이 없습니다.

dlwngud24   4년 전

djm03178님 답변 정말 감사합니다~

+ 저와 비슷한 궁금증을 가지신 분이 있다면 

  https://blog.naver.com/tipsware/221054714926 참고 해보는 것도 좋을 것 같습니다.

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