无法写入二进制文件C ++

时间:2017-08-22 16:49:44

标签: c++98

所以,我正在做一个项目,我需要创建一个文件来存储联系人,阅读它们,修改..... 一切都工作得很好,但几天后,我打开并再次运行文件,它搞砸了一切,它只是不会写文件 一旦我写了文件,我得到的是100个空格,我知道为什么100因为我班上的每个数据成员都是20,因此我有5个所以5x20 = 100 但我不知道为什么这不是写作注意:这之前完美无缺 ,我也尝试了很多东西,但是它想写点......

代码:

void contacts::createnew()
{
    ofstream fout;
    fout.open("contacts.c",ios::binary||ios::out);
    input();
    display();
    fout.write( (char*) &c, sizeof(c));
    fout.close();
    view();
    cout<<fout.good()<<fout.bad()<<fout.fail();
}

class contacts
{
    private:
        char name[20];
        addline_1[20];
        addline_2[20];
        email_id[20];
        char ph_no[10];
        mob_no[10];
    public:
        void init();

        //get contacts details by input
        void input()
        {
            // Implementation here...
        }
        void display()
        {
            // Implementation here...
        }

        void createnew();
        void view();
}

0 个答案:

没有答案