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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Max64
19 / 19 / 5
Регистрация: 27.10.2012
Сообщений: 156
#1

Передача двумерного массива в функцию - C++

07.01.2013, 17:50. Просмотров 421. Ответов 4
Метки нет (Все метки)

Не нашел в поиске, как правильно передавать в функцию в качестве параметра двумерный массив произвольного размера, чтобы в функции была возможность изменять значения в массиве?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.01.2013, 17:50     Передача двумерного массива в функцию
Посмотрите здесь:

Передача двумерного массива в функцию C++
C++ Передача двумерного массива в функцию
Передача двумерного массива в функцию. C++
Передача двумерного массива в функцию C++
Передача двумерного массива в функцию C++
C++ Передача двумерного массива в функцию
C++ Передача двумерного массива в функцию
C++ Передача двумерного массива в функцию
Передача в функцию двумерного массива C++
Передача двумерного массива в функцию C++
C++ Передача двумерного массива в функцию
Передача двумерного массива в функцию C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12542 / 7104 / 797
Регистрация: 27.09.2012
Сообщений: 17,521
Записей в блоге: 2
Завершенные тесты: 1
07.01.2013, 17:53     Передача двумерного массива в функцию #2
C++
1
2
template<typename T, int N>
void foo(T (&pArr)[N][N])
Если выделен в куче, то можно указатель передать.
ksuna
 Аватар для ksuna
6 / 6 / 0
Регистрация: 28.11.2012
Сообщений: 27
07.01.2013, 17:56     Передача двумерного массива в функцию #3
а каким образом создается передаваемый массив?
Max64
19 / 19 / 5
Регистрация: 27.10.2012
Сообщений: 156
07.01.2013, 17:59  [ТС]     Передача двумерного массива в функцию #4
Статический массив
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12542 / 7104 / 797
Регистрация: 27.09.2012
Сообщений: 17,521
Записей в блоге: 2
Завершенные тесты: 1
07.01.2013, 18:43     Передача двумерного массива в функцию #5
Цитата Сообщение от Max64 Посмотреть сообщение
Статический массив
Можно вообще тогда юзать адресную арифметику:
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
#include <iostream>
#include <cstdlib>
#include <ctime>
void FillRandom(int *arr,int height,int width){
    srand(time(NULL));
    for(int i=0;i<height;++i)
        for(int j=0;j<width;++j)
            *(arr+i*width+j)=rand()%10;
}
void cout_arr(int *arr,int height,int width){
    for(int i=0;i<height;++i){
        for(int j=0;j<width;++j)
            std::cout<<*(arr+i*width+j)<<' ';
        std::cout<<std::endl;
    }
}
 
 
int main(){
    const int h=20,w=30;
    int arr[h][w];
    FillRandom(&arr[0][0],h,w);
    cout_arr(&arr[0][0],h,w);
    return 0;
}
Передача двумерного массива в функцию
Yandex
Объявления
07.01.2013, 18:43     Передача двумерного массива в функцию
Ответ Создать тему
Опции темы

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