2504번 - 괄호의 값
while문에 탈출 조건을 EOF로 바꿔도 안되고.. 어디가 틀렸을까요?
getchar도 stdin을 사용하기 때문에 sync를 끈 후에는 사용할 수 없습니다.
@jh05013 해당 부분 수정해도 틀리네요..ㅠㅠ
개행과 EOF의 문제였습니다.
"지금은 데이터의 끝에 '\n'가 반드시 들어오도록 되어 있지만, 오래된 데이터는 '\n'가 없는 경우가 있습니다. getchar나 fgets로 입력받을 때는 '\n'과 EOF를 모두 검사하는 것이 안전합니다."
https://www.acmicpc.net/blog/v...
으어어어 감사합니다 소스코드는 내릴게요
그리고 이 부분은 잘 모르겠지만, sync를 꺼도 통과되네요. 여기 사용된 함수가 cout과 gets인데, 하나는 출력이고 하나는 입력이라서 꼬이지 않는 것으로 보입니다. 이건 더 잘 아는 분이 알려 주시길 바라고 있습니다.
버퍼를 분리하지만 입력 자체는 두 쪽으로 모두 들어가는 것 같습니다. 입출력 버퍼 또한 별개이니 출력 함수들과 섞어쓰는 것은 문제되지 않고요.
댓글을 작성하려면 로그인해야 합니다.
Green55 6년 전
while문에 탈출 조건을 EOF로 바꿔도 안되고.. 어디가 틀렸을까요?