Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 28.03.2008, 00:40   #1
IgorKr
Пользователь
 
Аватар для IgorKr
 
Регистрация: 19.11.2006
Сообщений: 44
По умолчанию Передача двухмерного массива в функцию

Помогите. Как передать двухмерный массив в ф-цию?

я описываю двухмерный массив как массив указателей на указатели одномерных массивов.
тип так:

Код:
int **arr;
arr=new int *[k];
for (int i=0;i<k;i++)
{
arr[i]=new int[k];    //массив одномерный дальше идет ещё цикл, в котором заполняем массив
}
Как мне передать его в ф-цию?
Ф-цию описываю так.

Код:
void f(int **arr, int k)
{
<code>
}
Передача идет так:

Код:
void main()
{
f(&arr,k);
}
Но компилятор почему то сильно матирится на строку вызова ф-ции.

error C2664: 'array_mod1' : cannot convert parameter 1 from 'int ***' to 'int **'
//array_mod1 - названия ф-ции

Последний раз редактировалось merax; 28.03.2008 в 14:03.
IgorKr вне форума
Старый 28.03.2008, 01:00   #2
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

И вовсе не "почемуто", а потому, что тип описан как дважды указатель, функция принимает дважды указатель, а передается в неё адрес "дважды указателя" - т.е. трижды указатель. не нужно никаких "&" в вызове, имена массивов это уже адреса.
B_N вне форума
Старый 28.03.2008, 01:11   #3
IgorKr
Пользователь
 
Аватар для IgorKr
 
Регистрация: 19.11.2006
Сообщений: 44
По умолчанию

я уже попробовал вот так f(arr,k); Скомпилилось.

Последний раз редактировалось IgorKr; 28.03.2008 в 01:23.
IgorKr вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка строк двухмерного массива EfiopianDIMON Общие вопросы C/C++ 9 26.05.2009 22:52
передача указателя в функцию arturka Помощь студентам 3 06.07.2008 00:25
Передача данных в функцию по указателю Игорь007 Общие вопросы C/C++ 2 23.06.2008 20:17
Какой самый быстрый метод заполнения массива, например двухмерного? SkAndrew Общие вопросы Delphi 11 29.05.2008 13:23
Ввод двухмерного массива в Делфи через StringGrid KIRILL_FR Помощь студентам 2 24.02.2008 18:03