Можно ли рассматривать двумерный массив как одномерный массив указателей, который индекс j является указателем на массив из j строки матрицы? Например, если у меня есть массив [4] [4]. Является ли arr [2] указателем на второй массив строк?двумерный массив как один размерный массив указателей
ответ
No. Данные непрерывны в памяти.
arr [2] знал бы размер одного массива и добавлял бы 2 раза к указателю массива, чтобы перейти к соответствующему смещению.
Зависит от того, как он создан. Если он статически выделяется с фиксированными размерами, то вы правы в том, что данные смежны, но вполне справедливо объявлять '
Возможно, это правда ... Это так, если вы выделили его таким образом: How do I work with dynamic multi-dimensional arrays in C?. Однако, лучший способ пойти может использовать что-то вроде &arr[2][0]
. Bye, Francis
Можно ли рассматривать двумерный массив как одномерный массив указателей, который индекс j является указателем на массив из j строки матрицы?
Да. Но всегда помните, что массивы не указатели. В случае 2D-массива array[M][N]
пробелы выделяются для каждого элемента массива array[i]
(i
здесь int
). Но в случае массива указателей *array[M]
вам необходимо выделить место для каждого элемента array
.
Например, если у меня есть массив [4] [4]. Является ли arr [2] указателем на второй массив строк?
Да. arr2
распадается на указатель на строку 2
- 1. Двумерный массив указателей
- 2. Как динамически выделять двумерный массив указателей? (C)
- 3. Как преобразовать двумерный массив в указатель указателей
- 4. как разбить один размерный массив, возвращаемый numpy.loadtxt
- 5. Как поместить один размерный массив в массив 2d java
- 6. Указатель на двумерный массив указателей типа объекта
- 7. Двумерный массив указателей функции void C++
- 8. определяющий (один/два) размерный массив boost :: dynamic_bitset
- 9. Как преобразовать одномерный массив в двумерный массив
- 10. инициализировать один размерный массив из базы данных
- 11. Двумерный массив
- 12. Двумерный массив как функцию
- 13. Симметричный 2 размерный массив
- 14. Двумерный массив
- 15. Как отсортировать двумерный массив?
- 16. Двойной размерный массив для одномерного массива
- 17. Как бы вы объявили двумерный массив указателей в C?
- 18. преобразовать 3 массив в один двумерный массив с array_merge? PHP
- 19. Как добавить массив в два двумерный массив
- 20. Как преобразовать двумерный массив в одномерный массив
- 21. Как быстро получить один размерный массив int из int **?
- 22. Как мы можем сделать один размерный массив многомерным Иерархическим?
- 23. Как добавить еще «элементы» или «размеры» в один размерный массив?
- 24. Как читать один размерный массив/вектор из csv в R
- 25. размерный динамический массив в C++
- 26. 2 Размерный массив из диапазона
- 27. 3 Размерный массив в C++
- 28. C: Динамический массив указателей на массив структуры
- 29. C Generic Функция прилежащей двумерный массив указателей арифметика
- 30. Как удалить двумерный двойной массив
Вы рассматриваете одномерный массив как просто указатель? – nhgrif
Прочтите раздел 6 [comp.lang.c FAQ] (http://www.c-faq.com). –