Я довольно новичок в C ++ и работаю над программой для торговых точек из класса, который мне нужно будет прочитать в пункте меню вместе с ценой. Я пытаюсь прочитать в .txt файл в 2D Char *, но продолжаю получать сообщение об ошибке
Thread 1: EXC_BAD_ACCESS (code=1, address=0x0)
из строки, содержащей
inFile >> array[i][j];
Я предполагаю, что это ошибка возникает из-за способа, которым я пытаюсь присвоить значения каждому элементу в массиве. Я уверен, как это сделать.
// Main function
int main (){
char *array[4][3];
string fileName;
vector<string>order;
fileName = fileLoc();
getMenu(fileName, array);
return 0;
}
string fileLoc(){
string file;
cout << "Enter file name or location: ";
cin >> file;
return file;
}
void getMenu(string fileName, char *array[][3]){
ifstream inFile(fileName.c_str());
if (!inFile){
cout << "File failed to open\n";
}
for (int i = 0; i < 4; ++i){
for (int j = 0; j < 3; ++j){
inFile >> array[i][j];
cout << array[i][j] << endl;
}
}
inFile.close();
}
Файл .txt, с которого я читаю, выглядит так
B Burger 3
S Soda 1
F Fries 2
C Chips 1.5