我试图创建一个二维数组的FILE指针
当我这样做时:
FILE *pFile = OpenFile(fileName);
FILE **lossArr = (FILE**)malloc(sizeof(FILE*) * i * j);
lossArr [0] = pFile;
fputs ("some text\n",(lossArr[0]));
工作正常,
但是当我添加
*
使其成为二维数组时:FILE *pFile = OpenFile(fileName);
FILE ***lossArr = (FILE**)malloc(sizeof(FILE*) * i * j);
lossArr[0][0] = pFile;
fputs ("some text\n",(lossArr[0][0]));
我得到了
Access violation writing location 0xcdcdcdcd.
我看到了使用malloc声明二维数组的方法,但是我想知道创建FILE指针二维数组的方法是什么?我的代码有什么问题。
先谢谢了!
最佳答案
第一。您应该为数组中的每一行分配内存
第二。这是C,但不是C ++。如果可以使用C ++,请使用std::vector