com_hello   5년 전

초보자인데 어느부분에서 문제가 발생하는지 모르겠습니다.

감사합니다.

gaelim   5년 전

소스를 보니 EOF를 확인할 수 있는 부분이 없습니다.  

gets 함수는 파일 읽기 실패시 0 을 리턴합니다. 

````C

char* ret = gets(s);

if ( ret == 0) break;

````

음 그리고 gets , fgets는 '\n' 문자도 들어가니 s[102] 라고 선언하셔야합니다. 

즉 문자열S (길이 100) + '\n' (길이 1) + null (길이 1)


알고리즘 문제해결에서는 상관없겠지만, C/C++에서 gets 함수는 쓰지말라고 권장되는것 같더군요.

입력 길이와 file descriptor 를 넘겨주는 함수 fgets를 익히셔서 사용하시는 것을 추천합니다. 

com_hello   5년 전

상세한 답변 정말 감사합니다!

덕분에 많은 도움되었습니다.

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