用C++写一个学生数据的文件
时间: 2024-06-09 14:09:54 浏览: 87
C++实现学生信息用文件存储
以下是一个简单的C++程序,可以创建一个学生数据文件,包括学生的姓名、学号、年龄和成绩:
```c++
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
struct Student {
string name;
int id;
int age;
double score;
};
int main() {
Student s1, s2, s3;
s1.name = "Tom";
s1.id = 1001;
s1.age = 20;
s1.score = 85.5;
s2.name = "Jerry";
s2.id = 1002;
s2.age = 21;
s2.score = 90.0;
s3.name = "Lucy";
s3.id = 1003;
s3.age = 19;
s3.score = 95.0;
ofstream fout("students.dat", ios::binary);
if (!fout) {
cout << "Error: cannot create file!" << endl;
return -1;
}
fout.write((char*)&s1, sizeof(s1));
fout.write((char*)&s2, sizeof(s2));
fout.write((char*)&s3, sizeof(s3));
fout.close();
return 0;
}
```
该程序定义了一个名为`Student`的结构体,包含了学生的姓名、学号、年龄和成绩。然后创建了三个学生对象`s1`、`s2`和`s3`,并给它们赋值。接着,使用`ofstream`类创建一个名为`students.dat`的二进制文件,并将三个学生对象写入文件中。最后关闭文件并退出程序。
注意,在写入文件之前,需要检查文件是否成功创建。可以使用`ofstream`类的`operator!`函数来判断文件是否打开成功。如果文件打开失败,则需要输出错误信息并退出程序。
阅读全文