• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

나이차이 freopen

19.10.16 20:40 작성 조회수 173

0

visual studio 에서 하고 있었는데 freopen을 사용하니 반환값이 무시되었다고 되네요...

답변 3

·

답변을 작성해보세요.

2

비쥬얼 스튜디오에서는 freopen, scanf대신에 freopen_s, scanf_s를 쓰라고 하는데 저는 잘 모르겠더라구요.

그래서 저는 비쥬얼 스튜디오에서는 ifstream과 cin, cout을 사용합니다. cin, cout은 입출력속도가 느린데 빠르게 하려면 ios_base::sync_with_stdio(false);를 프로그램 상단에 넣으면 scanf, printf와 같은 속도를 냅니다. 단 cin과 cout만 써야지 scanf, printf와 동시에 사용하면 안됩니다.

input.txt 파일은 소스파일과 같은 위치에 만들면 됩니다.

 

그리고 아래와 같이 소스코드를 짜면 됩니다. 제출할 때는 ifstream cin;과 cin.open("input.txt");를 주석처리 한 다음 컴파일만 하면 안되고 꼭 Ctrl+F5를 눌러 실행을 해야 합니다. 입력창뜨면 바로 종료해버려도 됩니다. AA.exe 파일을 채점받으면 됩니다.(그림은 BB.cpp로 했지만 처음 프로젝트 만들때 AA.cpp가 되게 하세요.)

1

네. 저는 에러가 없습니다. 저는 비쥬얼 스튜디오 2017를 사용합니다.

#include "pch.h"

꼭 해야 합니다. 그래야 에러가 나지 않습니다. 채점을 받을 때는 Release 모드로 채점받으면 좋습니다.

0

cxviuhwe님의 프로필

cxviuhwe

질문자

2019.10.25

궁금한 것이 있습니다. 

"ifstream test"로 선언하여 보내주신 코드의 "cin >> n"이 ifstream의 객체 cin 이라는 것을 확인 하였습니다.

ifstream객체의 이름을 예약어인 cin 과 동일하게 선언하셨는데 에러가 발생안하는지 궁금합니다.