Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.68
YELLOOOW
0 / 0 / 0
Регистрация: 05.09.2014
Сообщений: 6
#1

Считывание чисел из файла в массив и ошибка: "Invalid allocation size: 4294967295 byte" - C++

05.09.2014, 22:42. Просмотров 2801. Ответов 22
Метки нет (Все метки)

Всем привет.
Есть два вопроса.
1. Нужно считать из txt файла числа в массив столбцов и строк. Код вроде правильный, но пишет ошибку:"Invalid allocation size: 4294967295 byte".
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <fstream> 
#include <algorithm> 
#include <ctime> 
#include <iostream> 
using namespace std; 
int main() 
{ 
int row, col; 
ifstream ifs("matrix.txt"); 
ifs >> row >> col; 
int ** a = new int * [row]; 
for (int r = 0; r < row; r++, cout << endl) { 
a[r] = new int [col]; 
for (int c = 0; c < col; c++) { 
ifs >> a[r][c]; 
cout << a[r][c] << ' '; 
} 
} 
for (int r = 0; r < row; r++) delete[] a[r]; 
delete[] a; 
cin.get(); 
return 0; 
}
2. Нужно считать из txt файла n чисел (которые идут в ряд через пробел), и записать их в массив. Тут возникли трудности... есть пример какого-то кода?

Извиняюсь за дурацкие вопросы.
Буду благодарен за ответ!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.09.2014, 22:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Считывание чисел из файла в массив и ошибка: "Invalid allocation size: 4294967295 byte" (C++):

Код при компиляции пишет ошибку: "Invalid allocation size: 4294967295 byte" - C++
#include&lt;iostream&gt; #include&lt;fstream&gt; #include&lt;stdio.h&gt; using namespace std; struct list{ int d; list *next;}; int...

Invalid allocation size 4294967295 bytes - C++
Здравствуйте! Пытаюсь реализовать алгоритм обхода Грэхема. При запуске приложения появляется критическая ошибка: Invalid allocation size...

Ошибка - invalid allocation size: 4294967292 bytes - C++
Выполняю лабораторную работу №6 в методичке (прикрепил ее в посте), там программа - Многопроцессная обработка данных. Саму программу можно...

Указатели, Динамическое выделение памяти, Ошибка invalid allocation size - C++
Есть задание: Есть решение: #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;time.h&gt; void func(int **a,int lines,int...

Ошибка "Bad allocation" при обращении к массиву - C++
Такая проблема: выбивает bad allocation в 59 строке мейна. Запустите программу, введите 2 числа и выберите &quot;Сложение&quot;, введите &quot;0 1&quot;. ...

Ошибка: invalid conversion from "int" to "SDL_RendererFlip" - C++
Скриншот приложен, Вот страница, откуда я брал этот код Подскажите что делать

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
alsav22
5420 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
07.09.2014, 18:03 #16
У вас файл не должен открываться. В пути к файлу обратный слеш двойным должен быть.

Добавлено через 20 минут
Вот на это замените, будет понятней, что файл не окрылся:
C++
1
2
else
        std::cout << "Error" << std::endl;
0
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
07.09.2014, 23:33 #17
alsav22, тут что-то странное, perror должен ловить эту ошибку...
0
alsav22
5420 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
07.09.2014, 23:58 #18
Добавлено через 5 минут
Цитата Сообщение от GuGo1991 Посмотреть сообщение
alsav22, тут что-то странное, perror должен ловить эту ошибку...
Я не знаю, как работает perror(), может это он и ловит. У меня, при неправильном пути (с одинарными обратными слешами), выдаёт: "Error: Invalid argument".

Добавлено через 4 минуты
Это он про путь с одинарными обратными слешами выдаёт. Если обратные слеши двойными прописать, но файла нет, выдаёт: "Error: No such file or directory"
Поэтому:
Цитата Сообщение от alsav22 Посмотреть сообщение
Вот на это замените, будет понятней, что файл не окрылся:
C++
1
2
else
    std::cout << "Error" << std::endl;
0
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
08.09.2014, 00:09 #19
Так получается это не perror выдаёт, до него дело и не доходит.
alsav22, у вас при else std::cout << "Error" << std::endl; с одним слешем в пути Error печатает?
0
alsav22
5420 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
08.09.2014, 00:21 #20
Цитата Сообщение от GuGo1991 Посмотреть сообщение
Так получается это не perror выдаёт, до него дело и не доходит.
Вы про кого? Про меня или про ТС?
Цитата Сообщение от GuGo1991 Посмотреть сообщение
alsav22, у вас при else std::cout << "Error" << std::endl; с одним слешем в пути Error печатает?
Да. Ну, если файл не открылся, то else, и что там прописано вывести, то и выводит. Но студия, про путь с одинарными обратными слешами, предупреждение пишет. Например, на такой путь:
C++
1
std::ifstream file("D:\MY C++Projects\LAB\file.txt");
warning C4129: M: неизвестная escape-последовательность
warning C4129: L: неизвестная escape-последовательность
Добавлено через 1 минуту
Кстати, в коде ТС, в 15 посте, по подсветке видно, что путь неправильный.

Добавлено через 46 секунд
Цитата Сообщение от alsav22 Посмотреть сообщение
с одним слешем
С одним обратным, прямой может быть одинарным.
1
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
08.09.2014, 01:41 #21
Цитата Сообщение от alsav22 Посмотреть сообщение
Вы про кого? Про меня или про ТС?
Про ТС.
Ну да, так сказать, всё по делу. Видимо, IDE YELLOOOW видит ошибку таким образом
0
alsav22
5420 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
08.09.2014, 01:52 #22
Цитата Сообщение от GuGo1991 Посмотреть сообщение
Видимо, IDE YELLOOOW видит ошибку таким образом
ТС вообще непонятно что пишет. Якобы пробует ваш код, а ошибка та же, что и в первом посте. Я ваш код пробовал и в студии, и в mingw. Вывод ошибок одинаковый. Возможно у ТС в решении несколько проектов, и та ошибка, которую он приводит, относится совсем к другому коду.
0
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
08.09.2014, 12:37 #23
alsav22, не исключено
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.09.2014, 12:37
Привет! Вот еще темы с ответами:

Ошибка при компиляции "Size of the type 'char[]' is unknown or zero" - C++
При компиляции, появляется ошибка: Unit1.cpp(15): E2453 Size of the type 'char' is unknown or zero Помогите исправить. Вот текст...

Ошибка "variable-size type declared outside of any function" - C++
#include &lt;iostream&gt; using namespace std; int N,K,M; void vvod(int N,int A,int I); // &lt;--- void proverka(int J,int M,int A1); ...

Бинарный поиск, ошибка: "Invalid operands to binary expression" - C++
При компиляции программы XCode ругается на: algorithm:677:97: Invalid operands to binary expression ('const Luggage' and 'int') Сломал...

Из-за чего может возникать следующая ошибка: "Invalid null pointer"? - C++
NEBTELA* fggff; //указатель на объект базового класса fggff = new Zvezda; //переопределение в объект производного класса в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
08.09.2014, 12:37
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru