snrnsidy   2년 전

A+B 문제를 기준으로 질문드립니다.

아래와 같이 freopen을 이용해서 txt파일에서 stdin으로 옮겼습니다.

freopen("input.txt", "r", stdin);

그리고 cin >> a >> b를 해서 int sum = a+b를 했고 cout << sum << '\n'으로 출력을 했는데 틀렸습니다가 나옵니다.

제가 혹시 파일 입출력을 잘못한건가요??

제가 검색능력이 부족해서 인터넷을 뒤져봐도 답이 안나오네요ㅠㅠ

답변해주시면 감사하겠습니다


 

djm03178   2년 전

입력 자체가 stdin으로 들어오는데 그렇게 할 이유가 있는지 모르겠습니다. 입력 파일이 같은 디렉토리에 있는지도 모르고, 그 파일 이름이 input.txt인지도 모르며, freopen을 쓰면 제출할 때 경고도 뜨네요.

snrnsidy   2년 전

사실 HTML 문제를 풀고 있었는데

이게 파일에서 입력을 읽어오는 게 좋겠다는 생각이 들어서 그렇게 할려고 test 문제로 1000번 문제를 다시 풀어본거거든요

혹시 파일 입출력으로 할려고 할 때 제가 한 식으로 하면 안되는건가요?? 

jh05013   2년 전

그냥 파일입출력 자체가 안 됩니다.

로컬에서만 파일을 읽고 제출할 때는 안 읽게 하는 방법이 있습니다. ifndef ONLINE_JUDGE를 씌우면 됩니다.

snrnsidy   2년 전

아.... 감사합니다

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