@@ -22,20 +22,20 @@ class Employee{
2222};
2323
2424int main (){
25- ofstream out (" D:/Employee.dat" ,ios::out); // 定义随机输出文件
26- Employee e1 (1 ," 张三" ,23 ,2320 );
27- Employee e2 (2 ," 李四" ,32 ,3210 );
28- Employee e3 (3 ," 王五" ,34 ,2220 );
29- Employee e4 (4 ," 刘六" ,27 ,1220 );
30- out.write ((char *)&e1 ,sizeof (e1 )); // 按e1,e2,e3,e4顺序写入文件
25+ ofstream out (" D:/Employee.dat" ,ios::out); // 定义随机输出文件
26+ Employee e1 (1 ," 张三" ,23 ,2320 );
27+ Employee e2 (2 ," 李四" ,32 ,3210 );
28+ Employee e3 (3 ," 王五" ,34 ,2220 );
29+ Employee e4 (4 ," 刘六" ,27 ,1220 );
30+ out.write ((char *)&e1 ,sizeof (e1 )); // 按e1,e2,e3,e4顺序写入文件
3131 out.write ((char *)&e2 ,sizeof (e2 ));
3232 out.write ((char *)&e3 ,sizeof (e3 ));
3333 out.write ((char *)&e4 ,sizeof (e4 ));
3434
35- // 下面的代码将e3(即王五)的年龄改为40岁
36- Employee e5 (3 ," 王五" ,40 ,2220 );
37- out.seekp (3 *sizeof (e1 )); // 指针定位到第3(起始为0)个数据块
38- out.write ((char *)&e5 ,sizeof (e5 )); // 将e5写到第3个数据块位置,覆盖e3
39- out.close (); // 关闭文件
35+ // 下面的代码将e3(即王五)的年龄改为40岁
36+ Employee e5 (3 ," 王五" ,40 ,2220 );
37+ out.seekp (2 *sizeof (e1 )); // 指针定位到第3(起始为0)个数据块,这里写错了应该是2*sizeof(e1)
38+ out.write ((char *)&e5 ,sizeof (e5 )); // 将e5写到第3个数据块位置,覆盖e3
39+ out.close (); // 关闭文件
4040 system (" pause" );
41- }
41+ }
0 commit comments