반응형
🚀
이번 포스팅은 freopen() 함수 사용으로 입력(혹은 출력)을 간편하게 처리하는 방법에 대해 알아보도록 하겠습니다.
백준 문제 풀 때 입력값 넣는 방법
- 예제 입력 복사 후 콘솔 창에 붙여 넣기 하여 입력
- 파일로부터 입력값 불러오기
이전까지는 1번 방법으로 알고리즘 문제를 풀다가 매번 복사 후 붙여 넣고 테스트하고 코드 수정하고 하는 방식이 좀 비효율적인 것 같아서 input.txt를 만들고 그 안에 입력값을 저장해놓고 바로 실행 - 코드 수정 -바로 실행하는 것을 한번 해봤습니다.
📋 코드
input.txt 파일을 입력값(stdin)으로 read 하기
freopen("input.txt", "r", stdin);
output.txt 파일에 출력 결과(stdout)를 write 하기
freopen("output.txt", "w", stdout);
(freopen의 매개변수 중 "r"은 read의 약자, "w"는 write의 약자입니다.)
1. 실행시킬 cpp 파일과 같은 디렉터리에 input.txt 파일을 만든다.
2. input 텍스트 파일에 입력값 저장
3. 코드 실행하면서 입력값 확인
#include <iostream>
using namespace std;
int N, M;
int arr[5];
int main()
{
freopen("input.txt", "r", stdin);
cin >> N;
for (int i = 1; i <= N; i++)
{
cin >> arr[i];
}
for (int i = 1; i <= N; i++)
{
cout << arr[i] << '\n';
}
}
4. 백준에 제출할 때는 "freopen("input.txt", "r", stdin);" 부분을 주석 처리하거나 삭제하여 제출!
반응형
'💻IT' 카테고리의 다른 글
[면접 후기] 프론트엔드 신입 개발자의 면접 후기 (합격) (11) | 2022.03.12 |
---|---|
파일 시스템 오류 (-2147416359) - 사진파일이 열리지 않을 때 (3) | 2022.03.08 |
[개발상식] Ajax, axios, fetch 차이점 장단점 (2) | 2021.11.19 |
[개발상식] Docker & Kubernetes (도커와 쿠버네티스 차이) (2) | 2021.11.19 |
[개발상식] MSA(MicroService Architecture)란? (0) | 2021.11.17 |