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

Создание динамического массива - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Организовать выбор одной из трёх программ http://www.cyberforum.ru/cpp-beginners/thread249806.html
Создать программу с использованием меню. Вданной программе должен быть организован выбор одно из трёх программ: 1) Вычислить значение У У={a-b при b>0 {a+b при b<=0 2) Дан одномерный массив А. Найти номер последнего отрицательного элемента. 3) Дан двумерный массив размерностью NxM (N и M вводится с клавиатуры). Найти максимальный и минимальный элементы данного массива и поменять их...
C++ C++ Дан двумерный массив размерностью NxM Дан двумерный массив размерностью NxM(N и M вводятся с клавиатуры). Найти максимальный и минимальный элементы данного массива.Произвести вывод данного массива в виде матрицы. C++... http://www.cyberforum.ru/cpp-beginners/thread249786.html
Матрица NxM. Упорядочить. Есть код, нужна доработка. C++
Дан массив NxM. Упорядочить по возрастанию. Есть код, нужна доработка.
C++ Двумерный массив
Дан двумерный массив, размерностью N*N. Упорядочить строки целочисленной матрицы по возрастанию. Помогите пожалуйста) Только попроще вот так примерно: #include<stdio.h> #include<iostream.h> #include<string.h> #include<math.h> #include<conio.h>
C++ Угол на плоскости http://www.cyberforum.ru/cpp-beginners/thread249719.html
у меня вот такая задача по СИ: Угол на плоскости. Обязательные члены класса: величина угла в градусах; функции-члены для ввода/вывода величина угла, перевода величины угла в радианы, нахождения синуса угла. а вот мой код:#include "stdafx.h" #include "iostream" using namespace std; class CPtoD { double x,y,rad,ugol,sin; public:
C++ Контейнер с указателями на... Можно ли создать контейнер с указателями на функции, и если да, то как можно вызывать эти функции? Все функции с одим аргументом. подробнее

Показать сообщение отдельно
lavan
51 / 51 / 1
Регистрация: 21.03.2009
Сообщений: 371
28.02.2011, 12:51     Создание динамического массива
в С нет типа данных матрица(двумерный массив),поэтому матрица строится из одномерного массива указателей,которые указавают на одномерный
массив определенного типа.Т.е
int *a[2];
int mas1[]={1,2,3};
a[0]=mas;
int mas2[]={4,5,6};
a[1]=mas2;
//просто для примера
a[0]->1,2,3;//mas1
a[1]->4,5,6;//mas2
Теперь к вашему примеру,здесь распределяется память для массива указателей типа int где m-размерность массива
C
1
a=(int**)malloc(m*sizeof(int *));
а здесь
C
1
a[i]=(int *)malloc(n*sizeof(int));
распределяется память для одномерного массива типа int и адрес распределленного блока памяти передается массиву указателей.А поскольку
выделение памяти происходит в цикле,то
a[0]->содержит адрес первого массива типа int
a[1]->второго массива типа int
и т.д
 
Текущее время: 15:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru