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

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

Войти
Регистрация
Восстановить пароль
 
PinkPink
9 / 9 / 2
Регистрация: 10.05.2012
Сообщений: 279
#1

Не добавляются элементы в динамический массив - C++

07.10.2012, 20:59. Просмотров 343. Ответов 4
Метки нет (Все метки)

блин да что не так то??
пытаюсь добавить элементы в массив, а они ни в какую!
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
#include "processor.h"
#include <fstream>
#include <sstream>
void loader(string file)
{
    ifstream f(file);//открываем файл-программу
    string str,per;//строка файла и считанное число
    string com[5];//сделать динамич массив для команд
    processor VM;
    VM.count=0;
    short aa;
    int flag=1;//по умолчанию плюс - true это плюс
    double drob=0;
    int i=1, cel, por;
    while (!f.eof())
    {
        int *dinam = new int[64000];
        getline(f,str);
        for(int j=0;j<str.size();j++)
        {
            aa=str[j]-'0';
            VM.memory[VM.count++]=aa;
            dinam[j]=j;
        }
        //переписываем весь входной файл в память
    }
}
Простейший пример с массивом dinam, но элементы не добавляются!
после трёх добавлений в массиве по прежнему мусор
Помогите пожалуйста!! Вся работа встала

Добавлено через 10 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
 
int main()
{
    setlocale(0,"Russian");
    int *buka = new int[64000];
        for(int j=0;j<7;j++)
        {
            buka[j]=j;
        }
    system("pause");
    return 0;
}
И так не пашет =(
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.10.2012, 20:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не добавляются элементы в динамический массив (C++):

Используя динамический массив, обработать элементы - C++
Дан массив целых чисел из n элементов. Удалить из него все элементы, в записи которых последняя цифра равна 0.

Из массива Х все четные элементы записать в динамический массив Y - C++
Сформировать динамический одномерный целочисленный массив Х. Найти количество четных элементов. Из массива Х все четные элементы записать в...

Создать динамический массив и заполнить его элементы определёнными значениями - C++
Здравствуйте! Подскажите пожалуйста в чём может крыться ошибка (суть задачи состоит в том, чтобы создать динамический массив и заполнить...

Не могу уничтожить все нечетные элементы. При этом использовать динамический массив - C++
#include &lt;iostream&gt; #include &lt;ctime&gt; #include &lt;windows.h&gt; using namespace std; void Reshape(int *&amp;Array, int &amp;Size){ int...

Посмотрите объявление вектора и попытайтесь создать динамический массив, содержащий элементы типа char - C++
#include &lt;iostream&gt; #include &lt;vector&gt; using namespace std; int main() { vector&lt;int&gt; DynArrNums (3); DynArrNums = 365; ...

В новый динамический массив выписать все элементы массива, которые делятся на заданное число - C++
Помоготи с простенькой задачей: Дан массив произвольных чисел необходимо в новый динамический массив выписать все элементы, которые...

4
BuPy7
Нет ТЗ - давай досвидания
730 / 357 / 35
Регистрация: 01.12.2011
Сообщений: 2,178
07.10.2012, 21:08 #2
Суть работы с динамическими данными:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
    //создаём массив
    int *a = new int[5];
    
    //заполняем
    for (int i = 0; i != 5; i++)
        cin >> a[i];
    
    //распечатываем
    for (int i = 0; i != 5; i++)
        cout << a[i] << " ";
          
          //освобождаем память
          delete a;
Добавлено через 2 минуты
P.S. А код у вас рабочий.
0
PinkPink
9 / 9 / 2
Регистрация: 10.05.2012
Сообщений: 279
07.10.2012, 21:12  [ТС] #3
только он почему-то не работает -_-
Добавила скриншот, посмотрите
на изображении видно, что массив по прежнему пуст, хотя значение j показывает, что уже должно быть добавлено несколько элементов
0
Миниатюры
Не добавляются элементы в динамический массив  
BuPy7
Нет ТЗ - давай досвидания
730 / 357 / 35
Регистрация: 01.12.2011
Сообщений: 2,178
07.10.2012, 21:24 #4
Это адрес элемента в памяти Вы же указатель на массив типа int создали.
Запустите этот код, и посмотрите как это работает. Вопросы сразу отпадут и всё станет ясно.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//main.cpp
#include <iostream>
#include <conio.h>
#include <locale.h>
 
using namespace std;
 
int main()
{
    //русифицируем консоль
    setlocale(LC_ALL, "Russian");
     
    int *a = new int[1];
    a[0] = 5;
 
    cout << "Адрес: " << a << " Значение записанное в адресе: " << *a;
 
    _getch();   //задержка
    return 0;
}
0
PinkPink
9 / 9 / 2
Регистрация: 10.05.2012
Сообщений: 279
07.10.2012, 21:32  [ТС] #5
Цитата Сообщение от Metallnote Посмотреть сообщение
Это адрес элемента в памяти Вы же указатель на массив типа int создали.
Запустите этот код, и посмотрите как это работает. Вопросы сразу отпадут и всё станет ясно.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//main.cpp
#include <iostream>
#include <conio.h>
#include <locale.h>
 
using namespace std;
 
int main()
{
    //русифицируем консоль
    setlocale(LC_ALL, "Russian");
     
    int *a = new int[1];
    a[0] = 5;
 
    cout << "Адрес: " << a << " Значение записанное в адресе: " << *a;
 
    _getch();   //задержка
    return 0;
}
оооо
а я то думаю >< как такое может не работать
спасибо большое, прям камень с души)
0
07.10.2012, 21:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.10.2012, 21:32
Привет! Вот еще темы с ответами:

Создать динамический массив нужного размера и скопировать в него все положительные элементы из первых двух массивов - C++
Решить задачи через Указатели... 1. Программа должна создать два массива со случайными элементами из диапазона , по 10 элементов в...

Двумерный динамический массив (Получить векторный столбец, элементы которого являются наименьшим по модулю столбцов исходной матрицы) - C++
Подскажите, что делаю не так. Задание такое: Дана матрица A(n,m). Получить векторный столбец, элементы которого являются наименьшим по...

Реализовать двумерный динамический треугольный массив. Количество строк и сами элементы вводит пользователь. Количество элементов в строке рассчитывае - C++
Реализовать двумерный динамический треугольный массив. Количество строк и сами элементы вводит пользователь. Количество элементов в строке...

однонаправленный список: элементы добавляются и удаляются с начала, просматриваются с конца списка - C++
Вот друзья задание: Реализовать алгоритм работы с динамической структурой данных – однонаправленный список: элементы добавляются и...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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