Я должен прочитать из текстового файла, который содержит набор двоичных чисел, а затем преобразовать их в целые числа и сохранить их в массиве. Я сделал функцию для этого, однако функция возвращает только одно число. Кажется, он не просматривает файл или просто не работает. Кто-нибудь может понять, почему?
void readf4()
{
std::ifstream inFile("f4.txt");
std::vector<int> intArray;
std::string line;
//unsigned num = 0;
int inc = 0;
char * pEnd;
for(unsigned long int result; std::getline(inFile,line); result = strtol(line.c_str(),&pEnd,10))
{
//seg fault if I include these lines
//intArray[inc] = result;
//inc++;
cout<<result;//always returns 9223372036854775807
cout<<"\n";
}
}
Заранее спасибо!
Проблема в том, что вы используете пустой vector
и попытаться присвоить что-то своему элементу.
Вам нужно использовать
intArray.push_back(result);
И вам нужно инициализировать result
первый.
Других решений пока нет …