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

Указатель на двумерный массив - C++

Восстановить пароль Регистрация
 
lips
2 / 2 / 0
Регистрация: 03.01.2012
Сообщений: 283
02.12.2013, 16:24     Указатель на двумерный массив #1
хочу заменить вот такую запись:
C++
1
2
3
4
5
6
7
8
fs.read((char*)&size_struct[0], sizeof(int));
        fs.read((char*)&size_arr[0], sizeof(int));     char * item0 = new char[size_struct[0]*size_arr[0]];  fs.read((char*)item0, size_struct[0]*size_arr[0]);      
        fs.read((char*)&size_struct[1], sizeof(int));
        fs.read((char*)&size_arr[1], sizeof(int));     char * item1 = new char[size_struct[1]*size_arr[1]];  fs.read((char*)item1, size_struct[1]*size_arr[1]);
......................//и так далее 
    pt[0] = (wchar_t*)&item0[0];
    pt[1] = (wchar_t*)&item1[0];
....................//и тд
на такую:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
        std::fstream fs(L"lib//elements.data", std::ios::in | std::ios::binary);
        fs.seekg(136, ios_base::beg);
        for(int i=0;i<19;i++)
        {
            fs.read((char*)&size_struct[i], sizeof(int));
            fs.read((char*)&size_arr[i], sizeof(int));
            char ** item = new char*[i];
            for(int j=0;j<=i;j++)
            {
                item[j]=new char[size_struct[i]*size_arr[i]];
            }
            fs.read((char*)item[i], size_struct[i]*size_arr[i]);
            pt[i] = (wchar_t*)&item[i][0];
        }
 
        fs.close();
не работает.... а может?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2013, 16:24     Указатель на двумерный массив
Посмотрите здесь:

C++ Указатель на двумерный массив
Указатель на двумерный массив C++
Указатель на двумерный массив C++
указатель на двумерный массив C++
C++ Указатель на двумерный массив
Указатель на двумерный массив символов C++
Указатель на двумерный массив указателей C++
C++ Двумерный массив через указатель

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
liverpool777
-2 / 6 / 0
Регистрация: 10.07.2013
Сообщений: 44
02.12.2013, 19:10     Указатель на двумерный массив #2
Что именно не работает?

Добавлено через 15 минут
если я правильно понял
Цитата Сообщение от lips Посмотреть сообщение
char ** item = new char*[i];
должно быть перед циклом:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
size = 19;
char ** item = new char*[size];
for(int i=0;i<size ;i++)
{
     fs.read((char*)&size_struct[i], sizeof(int));
     fs.read((char*)&size_arr[i], sizeof(int));
     for(int j=0;j<=i;j++)
     {
          item[j]=new char[size_struct[i]*size_arr[i]];
     }
     fs.read((char*)item[i], size_struct[i]*size_arr[i]);
            pt[i] = (wchar_t*)&item[i][0];
}
lips
2 / 2 / 0
Регистрация: 03.01.2012
Сообщений: 283
03.12.2013, 08:13  [ТС]     Указатель на двумерный массив #3
Цитата Сообщение от liverpool777 Посмотреть сообщение
Что именно не работает?

Добавлено через 15 минут
если я правильно понял

должно быть перед циклом:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
size = 19;
char ** item = new char*[size];
for(int i=0;i<size ;i++)
{
     fs.read((char*)&size_struct[i], sizeof(int));
     fs.read((char*)&size_arr[i], sizeof(int));
     for(int j=0;j<=i;j++)
     {
          item[j]=new char[size_struct[i]*size_arr[i]];
     }
     fs.read((char*)item[i], size_struct[i]*size_arr[i]);
            pt[i] = (wchar_t*)&item[i][0];
}
спасибо
Yandex
Объявления
03.12.2013, 08:13     Указатель на двумерный массив
Ответ Создать тему
Опции темы

Текущее время: 17:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru