contemplation   2년 전

VS에서는 경고정도 나와서 정상 실행되는데 백준에선 정상 실행이 안되더군요. 

무엇이 문제인가요?

djm03178   2년 전

37번째 줄은 올바르게 초기화를 한 문장입니다. 안 된다고 생각하신 이유가 무엇인가요? 41번째 줄이 없어도 됩니다.

문제가 되는 부분은 43, 45번째 줄입니다. sizeof(sentence)를 인자로 넘겨줄 경우 문자열의 길이에 관계 없이 배열 전체를 보기 때문에 문자열의 길이를 넘어선 나머지 부분에 들어있는 쓰레기값에 대해서도 전부 검사를 하게 됩니다. 두 부분을 strlen으로 바꾸어주면 맞습니다.

contemplation   2년 전

아 그렇군요!
검사를 할 때 printf 해보니 쓰레기 값이 들어가있어서 올바르게 초기화가 안됐다고 생각했습니다.

덕분에 문제를 잘 풀 수 있었네요!!!

아래에 해주신 코멘트도 너무나 도움됐습니다. 앞으로 문자열을 잴 때는 strlen을 사용하도록 하겠습니다.  

친절한 답변 감사합니다. (_._)

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