Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
2 / 2 / 2
Регистрация: 12.10.2013
Сообщений: 168
1

Вернуть указатель на массив указателей

08.11.2013, 01:17. Показов 1423. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Мне надо вернуть указатель на массив указателей, как это сделать?
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
void **matrix(FILE *f) // Копируем матрицу из файла
{
    char x;
 
    int j;
 
    int **mat; // Матрица
 
    int i = 0;
 
    int y[2]; // Количество столбцов и строк
 
    while((x = getc(f)) != '\n')
    {
        if('0' >= x || x >= '9')
        {
            continue;
        }
        else
            y[i] = x - '0';
 
        ++i;
    }
    mat = malloc(sizeof(int *)*y[0]);
 
    for(i = 0; i < y[0]; ++i) //Динамически создаем матрицу
    {
        mat[i] = malloc(sizeof(int)*y[1]);
    }
    for(i = 0; i < y[0]; ++i) // Заполняем матрицу эллементами файла
    {
        for(j = 0; j < y[1]; ++j)
        {
            x = getc(f);
 
            if(x == ' ' || x == '\t' || x == '\n')
            {
                --j;
 
                continue;
            }
            else if('0' <= x && x <= '1')
            {
                mat[i][j] = x - '0';
            }
        }
    }
    }
    return ;
}

Функция читает данные из файла и заносить их в матрицу.
В файле текст типа:
4 5
1 0 1 0 0
1 1 1 1 1
0 1 1 1 1
0 0 0 1 0

где 4 - строки, 5 - столбцы.
Динамически выделяю память для матрицы 4х5, потом заполняю ее элементами(пробелы и новые строки пропускаю)
теперь хочу вернуть указатель на эту матрицу(указатель на массив указателей)но чет не понимаю, как, подскажите, добрые люди.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.11.2013, 01:17
Ответы с готовыми решениями:

Не могу через указатель на двумерный массив вернуть все значения в другой массив
Не могу через указатель на двумерный массив вернуть все значения в другой массив возвращается...

Как объявлять указатель на массив указателей?
Народ, поясните как объявлять указатель на массив указателей и как отправлять его как параметр в...

Как правильно объявлять указатель на массив указателей?
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;malloc.h&gt; int main(){ int a, b; int *a1,...

Вернуть указатель на массив из функции и продолжить работу с этим массивом в main()
Функция создает массив или изменяет его уже готовый. Главное - готовый массив передать в main и...

2
26 / 26 / 7
Регистрация: 05.04.2012
Сообщений: 248
08.11.2013, 01:25 2
Всё просто: в конец функции вставляешь
C
1
return mat;
.
1
2 / 2 / 2
Регистрация: 12.10.2013
Сообщений: 168
08.11.2013, 01:28  [ТС] 3
АА, точно, спасибо, а я дурак, я же уже объявлял **mat))
0
08.11.2013, 01:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.11.2013, 01:28
Помогаю со студенческими работами здесь

Удалить все элементы, которые кратны числу (к) и вернуть указатель на новый массив
функция получает указатель (1 элемент массива), целое число и размер массива (по указателю)...

Объявить массив из N указателей на функции, возвращающих указатели на функции, возвращающие указатель на char
Задание: Объявить массив из N указателей на функции, возвращающих указатели на функции,...

Вернуть указатель на число с плавающей точкой
//такой работает double *FindInProc(int *x,int *max) { double i =...

Почему нельзя двумерный массив преобразовывать в указатель на указатель?
Имеем массив: int daytab; при передаче его в функции количество столбцов должно быть определено:...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru