Я пытаюсь написать консольное приложение, которое читает из файла в форме (все являются целыми числами)
Пример:
c
k
a1 a2 a3
a4 a5 a6
a7 a8 a9
где первая строка для количества строк, а втораядля количества столбцов и c , k и , все являются целыми числами.
если I cout<<row
или столбец, это ставит программу в цикл.
Я попытался прочитать всю строку с
getline(my file, line)
, а затем
row=stoi(line);
но без без .
ПРИМЕР КОДА
void read_row_and_column_function(int* fucntion_selector,string* ptr_to_name_of_file)
{
int row, column;
ifstream myfile;
myfile.open(*ptr_to_name_of_file);
if(myfile.is_open())
{
myfile>>row;
myfile>>column;
myfile.close();
}
cout<<row;
}
Ожидаемый результат - строка.
РЕДАКТИРОВАНИЕ ПОЛНОГО КОДА
#include<iostream>
#include<fstream>
using namespace std;
void file_name_getter();
void read_ploynomials_and_variables_function(int* fucntion_selector,string* ptr_to_name_of_file)
{
int polynomials, variables;
ifstream myfile;
myfile.open(*ptr_to_name_of_file);
if(myfile.is_open())
{
myfile>>polynomials;
myfile>>variables;
myfile.close();
}
cout<<polynomials<<endl;
}
void data_structure_seletor(string* ptr_to_name_of_file)
{
cout<<"Select the desired data structure to store polynomials\n1. Matrix\n2. Linked List\n3. Change file name\n0. EXIT\nINPUT: ";
int data_structure_choice;
cin>>data_structure_choice;
while(1)
{
if (data_structure_choice==1)
{
read_ploynomials_and_variables_function(&data_structure_choice, ptr_to_name_of_file);
}
else if (data_structure_choice==2)
{
read_ploynomials_and_variables_function(&data_structure_choice, ptr_to_name_of_file);
}
else if (data_structure_choice==3)
{
cout<<"\n";
file_name_getter();
}
else if (data_structure_choice==0)
{
return;
}
else
{
cout<<"\nIncorrect option. TRY AGAIN!!\n\n";
}
}
}
void file_name_getter()
{
string name_of_file, extension=".txt";
cout<<"Enter name of the file you want to open\nNOTE: \".txt\" extension will be appended by the program\nNAME of file: ";
cin>>name_of_file;
name_of_file=name_of_file+extension;
data_structure_seletor(&name_of_file);
}
int main()
{
file_name_getter();
return 0;
}
Файлы находятся в одном файлепапки. Пример имени файла 10x5 , 3x3 и т. Д.
EDIT
__. Запрос решен. Проблема была в void data_structure_selector()
в while(1)
цикле.