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