#include<iostream>
#include<fstream>
using namespace std;
struct PhanSo{
int TuSo, MauSo;
};
typedef struct PhanSo PHANSO;
void xuatPhanSo(PHANSO ps){
cout << ps.TuSo << "/" << ps.MauSo << endl;
}
int main(void){
PHANSO ps;
ifstream FileInput("INPUT.txt");
if (FileInput.fail()){
cout << "File khong ton tai!";
return 0;
}
char c;
FileInput >> ps.TuSo;
FileInput.seekg(1, ios_base::cur);
//FileInput >> c;
FileInput >> ps.MauSo;
FileInput.close();
xuatPhanSo(ps);
return 0;
}
Đây là File Input của em:
12/5
3/4
Chào mọi người, em định dùng seekg để bỏ qua ký tự ‘/’ và đọc tiếp phần mẫu số, nhưng sau khi đọc xong thì kết quả trả về lại là 12/3. Nếu em sử dụng biến c để lưu ký tự ‘/’ thay vì seekg thì ko bị lỗi này. Trong trường hợp File chỉ có 1 phân số 12/5 thì dùng seekg vẫn cho ra kết quả đúng. Vậy vấn đề này là do đâu ạ?