Hỏi về đọc ghi file trong C++

Em muốn là đọc dữ liệu từ file (input.txt) để làm với class xong từ kết quả nhận được muốn ghi lại vào file khác (output.txt). Nhưng kết quả thu được ở file ouput.txt lại giống với file input.txt.
intput.txt có 2 số là 100 1000
Sau khi chạy chương trình thì output.txt vẫn là 100 1000 ạ ((
Mọi người chỉ em cách làm với ạ!! Em xin cảm ơn :frowning:

#include <iostream>
#include <fstream>
using namespace std;
class Test{
private:
    int a;
    int b;
public:
    Test (int, int);
    void cong();
};

Test::Test(int a, int b) {
    this->a = a;
    this->b = b;
}

void Test::cong() {
    int x; cin >> x;
    int y; cin >> y;
    a+=x; b+=y;
}



int main() {
    int a, b;
    ifstream ifs;
    ifs.open("input.txt");
    ifs >> a >> b;
    ifs.close();
    Test test1 (a, b);
    test1.cong();
    ofstream ofs("output.txt");
    ofs << a << " " << b;
    ofs.close();
    return 0;
}

rõ ràng bạn tự in ra kết quả input

2 Likes

Bên hàm main bạn thử in ra giá trí a, b sau khi gọi hàm cong() đi.

2 Likes

2 Biến a, b ở hàm main và 2 biến a, b trong class test là khác nhau. Bạn thay ofs << a << " "<< b ; => ofs << test.a << " "<< test.b ;

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?