Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 11.12.2016
Сообщений: 4

Код при компиляции пишет ошибку: "Invalid allocation size: 4294967295 byte"

11.12.2016, 20:44. Показов 2207. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#include<iostream> 
#include<fstream> 
#include<stdio.h> 
using namespace std;
struct list{
    int d;
    list *next;};
int round(int n,int count){
    int a=count/n;
    int b=a;
    if(a-b==0)return b;
    else return ++b;}
int **readfromfile(int n,int &m,int&count){
    list *first = 0;
    list *buffer = 0;
    list *current;
    ifstream in("lab53.txt");
    int a;
    while (in >> a){
        count++;
        current = new list;
        current->d = a;
        current->next = 0;
        if (buffer == 0)
            first = buffer = current;
        else buffer->next = current;
        buffer = current;}
    m=round(n,count);
    current=first;
    int **mas=new int *[m];
    for(int i=0;i<m;i++) mas[i]=new int[n];
    for(int i=0,k=1;i<m;i++){
        for(int j=0;j<n;j++,k++){
            if(k<=count){
                mas[i][j]=current->d;
                current=current->next;}
            else mas[i][j]=0;}}
    for(int i=0;i<m;i++)
        for(int j=0;j<n;j++)
            if(mas[i][j]>0) mas[i][j]=(int)log(mas[i][j]);
    for(int i=0;i<count;i++){
        current = first;
        first = first->next;
        delete current;}
    return mas;
}
void out(int **mas,int n,int m){
    ofstream put("results.txt");
    for(int i=0;i<m;i++){
        for(int j=0;j<n;j++){
            put<<mas[i][j]<<"\t";
            put<<endl;}}
    int mult;
    for(int i=0;i<m;i++){
        mult=1;
        for(int j=0;j<n;j++){
            if (mas[i][j]<0){
                mult*=mas[i][j];}
        put<<mult<<"/t";}}
}
void main(){
    const int n=4;
    int m,count;
    int **mas= readfromfile(n,m,count);
    out(mas,n,m);
    //for(int i=0;i<m;i++)delete[]mas[i];
    delete [] mas;}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.12.2016, 20:44
Ответы с готовыми решениями:

Считывание чисел из файла в массив и ошибка: "Invalid allocation size: 4294967295 byte"
Всем привет. Есть два вопроса. 1. Нужно считать из txt файла числа в массив столбцов и строк. Код вроде правильный, но пишет...

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

Ошибка invalid allocation size 4294967295 bytes
Здравствуйте. Написал код, который парсит файл. Всё работает хорошо, но захотел добавить переопределение квадратных скобок(в коде больше...

7
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
12937 / 6804 / 1821
Регистрация: 18.10.2014
Сообщений: 17,220
11.12.2016, 21:33
Во-первых, потрудитесь внятно объяснить в каком именно месте и когда происходит ошибка.

Во-вторых, "Invalid allocation size: 4294967295 byte" - ошибка времени выполнения. Каким это образом она у вас вдруг получилась "при компиляции"?
0
0 / 0 / 0
Регистрация: 11.12.2016
Сообщений: 4
11.12.2016, 21:38  [ТС]
прошу прощения,что не могу нормально объяснить,но при запуске программы вот что получается,error list ничего не показывает
Миниатюры
Код при компиляции пишет ошибку: "Invalid allocation size: 4294967295 byte"  
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
12937 / 6804 / 1821
Регистрация: 18.10.2014
Сообщений: 17,220
11.12.2016, 21:42
Цитата Сообщение от yeppo Посмотреть сообщение
error list ничего не показывает
Нажимаете кнопочку "Повтор" и смотрите, что именно делал код в этот момент.

И где входные данные, на которых вы этот код запускали? Откуда нам их предлагается брать?
0
0 / 0 / 0
Регистрация: 11.12.2016
Сообщений: 4
11.12.2016, 21:51  [ТС]
входные данные берутся из txt файла,и вывод должен быть в другой файл
C++
1
2
3
4
5
6
7
8
9
10
/* Diagnostic memory allocation from this point on */
 
                if (nSize > (size_t)(_HEAP_MAXREQ - nNoMansLandSize - sizeof(_CrtMemBlockHeader)))
                {
                    _RPT1(_CRT_ERROR, "Invalid allocation size: %Iu bytes.\n", nSize);
                    if (errno_tmp)
                    {
                        *errno_tmp = ENOMEM;
                    }
                }
0
116 / 106 / 51
Регистрация: 29.03.2016
Сообщений: 480
11.12.2016, 22:01
компилится в режиме 32bit?
0
0 / 0 / 0
Регистрация: 11.12.2016
Сообщений: 4
11.12.2016, 22:02  [ТС]
да.
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
12937 / 6804 / 1821
Регистрация: 18.10.2014
Сообщений: 17,220
12.12.2016, 00:20
Цитата Сообщение от yeppo Посмотреть сообщение
C++
1
/* Diagnostic memory allocation from this point on */
Нам не интересно смотреть на код стандартной библиотеки. После того, как программа остановилась здесь, вам надо подняться вверх по стеку вызовов в ваш код. Там вы увидите ваш вызов new, который вызвал ошибку. В этот new вы передаете либо отрицательное, либо какое-то слишком большое значение. Именно из-за этого происходит падение.

Вот это и смотрите: в каком значении у вас ерунда - в n или в m.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.12.2016, 00:20
Помогаю со студенческими работами здесь

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

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

Код при компиляции выдает ошибку "invalid character in file"
.386 .model flat, stdcall option casemap :none include H:\Ass\masm32\include\masm32.inc include H:\Ass\masm32\include\kernel32.inc...

[ATmega32] Код при компиляции выдает ошибку "invalid character"
Выдает ошибку на 70 строчку: Invalid character: ' ldi tempind0,0b0110111 но там нет даже такого символа у меня ATMEGA32

При компиляции пишет ошибку Assign?
пример использования функции Assign() работает а точно такое же использование функции Assign() выкидывает ошибку введите название...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru