2998번 - 8진수
조건인 입력에서 100글자도 동적할당하고
주어진 방식으로 3글자씩 끊어서 2진수를 8진수로 바꾸고
출력도 문제 없이 잘 되는데 왜그럴까요 ??
a 배열이 딱 100칸으로 선언되어있는데
만약 입력되는 문자열이 100자리라면 마지막의 NULL이 들어갈 공간이 없습니다.
그리고 b배열의 길이는 2,3,4 중 하나인데
여기다가 a배열을 strcat으로 붙여버리면 당연히 공간이 모자랍니다.
이러저러한 이유로 잘못된 메모리 공간을 접근해서 의도치않은 결과가 나오는 것 같네요.
오오 감사합니다!
또 덕분에 해결했습니다!!!
댓글을 작성하려면 로그인해야 합니다.
misule 8년 전
조건인 입력에서 100글자도 동적할당하고
주어진 방식으로 3글자씩 끊어서 2진수를 8진수로 바꾸고
출력도 문제 없이 잘 되는데 왜그럴까요 ??