C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[56804] ofstream을 이용한 파일 출력 질문드립니다.
RSNC [] 1586 읽음    2009-05-10 00:55
행렬 A,B를 각각 mat_A.txt, mat_B.txt로부터 읽어서



A+B, A-B, A*B를 계산하여 각각의 결과를

add.txt, sub.txt, mul.txt에 저장하는 프로그램입니다.

Matrix라는 class를 선언했습니다.



ofstream객체가 하나일때, 즉

A+B만 계산하여 add.txt에 저장할 때는 잘 됩니다.

아래 프로그램에서 ///1 부터 ///2까지 코멘트 처리 하면 잘 돌아갑니다.

A-B만, 또는 A*B만 저장할때도 각각 잘 돌아갑니다.



그런데

파일 한 개를 저장할 때는 잘 되는데

파일 세 개에 쓸 때는 잘 되지 않습니다.



ofstream을 세 개 생성하여 각각의 파일에 저장할 때는 컴파일은 되지만

실행할 때에 오류가 뜨고(프로그램의 작동이 중지되었습니다.. 라는 에러 팝업창이 뜹니다.)

파일에도 저장이 되지 않습니다.

운영체제는 비스타를 사용하고 있습니다.



파일 여러 개에 각각의 결과를 저장하려면 어떻게 해야 하는 건가요?



아래 방법에서 어떤 점을 고쳐야 할까요?
아니면 여러 개 파일에 결과를 쓸 수 있는 다른 방법이 있다면 부탁드립니다.


감사합니다!



/////////////////////////////////////



#include <cstdlib>
#include <iostream>
#include <fstream>
#include "matrix.h"



using namespace std;



int main(int argc, char *argv[]){
    Matrix A, B, C;  
  
    ifstream Matrix1;           //Read Matrix file 1
    Matrix1.open("mat_A.txt");
    Matrix1 >> A;
    Matrix1.close();
    
    ifstream Matrix2;           //Read Matrix file 2
    Matrix2.open("mat_B.txt");
    Matrix2 >> B;
    Matrix2.close();

  
    C = A + B; //Addition

    ofstream add;
    add.open("add.txt");
    add << C;
    add.close();



/// 1

    C = A - B; //Subtraction
 
    ofstream sub;
    sub.open("sub.txt");
    sub << C;
    sub.close();
 
    C = A * B; //Multiplication
  
    ofstream mul;
    mul.open("mul.txt");
    mul << C;
    mul.close();
   

/// 2
  
   system("PAUSE");
 
   return EXIT_SUCCESS;
}

+ -

관련 글 리스트
56804 ofstream을 이용한 파일 출력 질문드립니다. RSNC 1586 2009/05/10
56806     해결되었습니다. RSNC 1071 2009/05/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.