CSE207 객체지향 강좌 및 C++ 관련, 누구나 묻고 답하는 게시판 입니다. CSE207 수강생이 아니여도 편안하게 질문하세요. 첨부화일은 이미지 화일 혹은 zip 화일로 업로드 하기를 권합니다. 제목질문입니다!2019-09-27 10:50작성자k#include<iostream>#include<string>#include<fstream>using namespace std;int main(){ ofstream fout; string s1 = "Objective Oriented Programming"; fout.open("example.txt"); fout << s1 << endl; fout << "Random Variable" << endl; fout << "Linear Algebra" << endl; fout.close(); ifstream fin; char ch; fin.open("example.txt"); if (!fin) { cout << "Error: no such file exists" << endl; exit(100); } while (true) { fin.get(ch); fin >> s1; if (!fin) break; cout << s1 << endl; cout << ch << endl; } return 0;}3가지 질문이 있는데요!!음 일단 이걸 실행하게 되면 example이라는 텍스트 파일안에Objective Oriented ProgrammingRandom VariableLinear Algebra가 만들어졌고, 1.위와 같은 while문을 쓰게 됬을때 콘솔창에 bjectiveOOrientedProgrammingRandomVariableLinearAlgebra계속하려면 아무 키나 누르십시오 . . .이렇게 출력이 되었는데요 ! 텍스트 파일안의 씨커가 Linear바로 뒤에 도달했을때 while문처음으로 돌아오고 get함수에 의해서 ch에는 띄어쓰기 가 입력이 되고 s1에는 Algebra가 입력이되면서씨커가 텍스트파일의 가장 끝에 도달하게 되잖아요. 그러면 fin은 false가 되면서 if문의 조건문을 만족하므로break가 실행되어서 cout을 하지않은 상태로 종료가 되어 Algebra 와 띄어쓰기는 출력이 되지않아야 하지않나요?ㅠㅠ2.교수님께서 close를 하지않으면 파일이 저장이 되지않는다고 하셨는데, ifstream 같은경우는 저장할 필요가 없으니 위와 같이 close를 하지않아도프로그램이 잘 돌아가잖아요 그러면 굳이 안써도 되는건가요?3.교수님께서 파일에서 문자하나만 입력받고 싶을 땐 get함수를 쓰라고 하셨는데 char ch;fin>>ch;를 하는것과 fin.get(ch);의 차이점이 무엇인가요? 목록수정삭제답변글쓰기 댓글 [0] 댓글작성자(*)비밀번호(*)내용(*) 댓글 등록 더보기이전응용2번 문제 질문이찬2019-09-27다음[re]질문입니다!이강호_조교2019-09-30 Powered by MangBoard | 워드프레스 쇼핑몰 망보드