Runtime Error

Jinner Reply 9 years 32 weeks ago
컴파일도 되고 프로그램에서 출력값도 바로 나오는데 제출하면 runtime error라고 뜨네요... 하루종일 잡고있었는데 돌아버리겠습니다. ㅠㅠ뭐가문제죠
pichulia Reply 9 years 32 weeks ago
60번째 줄의 while(from[len] != '\n') 가 문제가 되고있네요. 입력의 마지막줄.. 그러니까 EOF가 들어온 경우 from배열에는 '\n'가 없습니다. 그래서 len이 무한히 커지고있고, 따라서 배열의 크기보다 큰 인덱스에 접근하려해서 Runtime Error가 발생한 것입니다.
Jinner Reply 9 years 32 weeks ago
그럼 EOF가 들어온 경우에는 FROM배열은 '\0'값이 들어가는건가요..?
pichulia Reply 9 years 32 weeks ago
제 생각에는 getline 함수에 있는 if(c == '\n'){ s[i] = c; i++; } 이게 만악의 근원 같습니다.. 이 부분을 지우면 모든 줄에 '\n'이 없게되고 while(from[len] != '\0') 으로 해결이 됩니다..