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

Работа с двухмерным динамеческим массивом через указатель - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как повернуть элементы матрицы на 90 градусов против часовой стрелки? http://www.cyberforum.ru/cpp-beginners/thread1306472.html
ЗАДАНИЕ: Дана матрица. Повернуть все её элементы вокруг центра на 90 градусов против часовой стрелки. #include <iostream> #include <stdlib.h> #include <time.h> using namespace std; int main() {
C++ Динамические массивы с передачей в функции Здравствуйте, завтра у меня обязательная контрольная работа, без права пересдачи, я переболел ветрянкой и не смог разобраться, времени не хватает, помогите, напишите пожалуйста программу на С++(мы сдаем на Borland C++). Задание: вводить неодноразово и обрабатывать массивы, размещая их в динамической памяти.Для каждого из заданий использовать отдельную функцию с передачей параметров в две... http://www.cyberforum.ru/cpp-beginners/thread1306466.html
C++ Выяснить, является ли натуральное число N точным квадратом
Составит линейную логическую программу, печатающую значение 1, если указанное высказывание является истинным, и 0 – в противном случае: натуральное число N является точным квадратом. (не забегая вперёд, по линейным программам)
C++ Как создать глобальную константу для всего проекта?
как создать?
C++ Передача двухмерного массива в функцию http://www.cyberforum.ru/cpp-beginners/thread1306450.html
Товарищи, помогите, пожалуйста, с таким вопросом: Я хочу сделать функции ввода и вывода элементов двухмерного массива, да так, чтобы эти функции были универсальными и принимали аргументы в качестве параметров. Но в описании функции требуется указывать его размерность: void filling_array (arr); Вопрос: как написать функцию, чтобы эти размеры задавались при вызове? Заранее спасибо)
C++ Написать функцию для сортировки порядка строк в файле по возрастанию их длины Дан текстовый файл состоящий из некоторого количества строк.написать функцию для сортировки порядка строк в файле по возрастанию их длины подробнее

Показать сообщение отдельно
TheCalligrapher
С чаем беда...
Эксперт CЭксперт С++
3610 / 1885 / 500
Регистрация: 18.10.2014
Сообщений: 3,446
21.11.2014, 02:01     Работа с двухмерным динамеческим массивом через указатель
Цитата Сообщение от true_bugmaker Посмотреть сообщение
Где конкретно в спецификации это указано?
Это тянется еще со спецификации языка С.

В С++03, например, это указано в 8.3.4. Где сказано
8.3.4/1. Что массив 'T a[N]' является непрерывно распределенной последовательностью из 'N' объектов типа 'T' (An object of array type contains a contiguously allocated nonempty
set of N sub-objects of type T.)
8.3.4/2. Что типом 'T' может являться в том числе и другой массив (An array can be constructed from one of the fundamental types (except void), from a pointer, from a
pointer to member, from a class, from an enumeration type, or from another array.)
8.3.4/3. Что такой объект и является тем, что называется "многомерным массивом" в С++
8.3.4/4. Поясняет 8.3.4/3 примерами.

То есть в языке С++ N-мерный массив определяется рекурсивно как 1-мерный массив N-1-мерных подмассивов. И т.д.

Цитата Сообщение от true_bugmaker Посмотреть сообщение
Вы просто не поняли. Структура данных, которая создается в конце вашей ссылки - это так называемый "jagged array" (или "ragged array"). Эта структура данных ни по своему устройству, ни по своей семантике никакого отношения к встроенным многомерным массивам языка С++ не имеет.

Внешнее сходство сводится лишь к возможности применять [i][j] для доступа к элементам. Именно по этой причине новички зачастую наивно полагают, что именно так устроены встроенные языковые многомерные массивы. А на самом деле это не так.

Цитата Сообщение от true_bugmaker Посмотреть сообщение
По-моему ты меня уныло троллишь. Если дискуссия с твоей стороны будет продолжаться в таком же стиле, я её прекращаю.
Нет, нет, это просто вас кто-то раньше уныло и жестоко потроллил, причем с занесением в подсознание. Вот вы теперь "так и ходите", не понимая, что с вами сделали.

У вас сейчас есть уникальная возможность выкинуть весь этот мусор из головы и чему-то наконец научиться. Но для этого вы будете вести себя исключительно вежливо. Если что не понятно - будете задавать вежливые продуманные вопросы. А не устраивает - вперед колбаской по Малой Спасской!
 
Текущее время: 17:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru