Я новичок в C++. Я хочу создать базу данных, в настоящее время я работаю над одной из первых ее функций. Я хочу, чтобы база данных вводила пользователя и извлекала его в файл (который отлично работает), а затем я хочу, чтобы он отображал сохраненные числа. Как извлечь данные? Я знаю, что в настоящее время то, что я сделал в функции displayAll, не имеет смысла, но я пробовал другие способы, но не мог найти рабочего решения. Как присоединить каждый вход к определенному индексу таблицы? Является ли способ ввода данных, которые сейчас делают для меня?Ввод таблиц из файла
Я понимаю, что текущий способ инициализации таблицы не является оптимальным, моя цель - сохранить атрибут value. Кроме того, я хочу в ближайшее время добавить функцию ученика со студенческим знаком, именем и фамилией в том же формат как числа (структура), поскольку я хочу, чтобы у него было 2 разных типа данных и они были в одной таблице с 1000 индексами.
Ниже приведен код, ответственный
struct numbertype {
int value;
};
numbertype numbers[1000];
void AddNumber(){
cout << "Input number" << endl;
cin >> numbers[1000].value;
ofstream numbersout;
numbersout.open("D:\\numbers.txt", ios::app);
numbersout << numbers[1000].value<<"\n";
numbersout.close();
}
void DisplayAllNumbers(){
ifstream numbersout("numbers.txt");
cout << "\t\tTable: numbers";
cout << "value" << endl;;
while (numbersout >> numbers[1000].value){
cout << numbers[1000].value<<endl;
}
numbersout.close();
}
'числа [1000]' выходит за пределы границ – uk4321
Кроме доступ к массивам вне пределов, ваш файловый код в порядке. Тем не менее, вам, вероятно, не нужен ни массив, ни структура. Для буферизации ввода-вывода можно использовать один «int»: просто установите int, сделать файл io и повторить. Более сложные таблицы могут быть сделаны почти одинаково с большим количеством переменных. – mfabel
Я предлагаю вам ознакомиться с теорией базы данных или научиться использовать базу данных. –