c++二维vector不能一次性读写

2024-05-03  本文已影响0人  Caucher

如题,又是一个血泪教训。。。

二维vector,比如vector<vector<int>>a,如果要写入文件,或者读取,切忌不可fwrite(&a[0][0], sizeof(int), num, f).

因为二维vector存储不是连续的,直接写入会乱掉。

需要逐行写入:

for(int i = 0; i < a.size(); ++i)
  fwrite(&a[i][0], sizeof(int), a[i].size(), f);
上一篇 下一篇

猜你喜欢

热点阅读