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

Какими способами можно передать многомерные массивы в функцию? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ создать функцию. http://www.cyberforum.ru/cpp-beginners/thread96734.html
Помогите создать функцию. Входной параметр - char Buffer. Но имя буффера будет постоянно разным. так же как и его размер. функция должна посчитать контрольную сумму и отправить все в СОМ порт....
C++ Указатели В общем с++ прошел мимо меня... стыдно мне такие вопросы задавать, но что делать...) Если пишем int* n1; то n1 - это указатель на переменную типа int *n1 - получаем значение, которое... http://www.cyberforum.ru/cpp-beginners/thread96724.html
friend функция в пространстве имен C++
class Particle{ friend bool FileManager::Particles(const char* FileName, void* Target); /* etc */ } Ругается что "error C2039: Particles: не является членом "FileManager"" Объявление...
C++ ПосоветуйтЕ
Хочу СПросиТь есть ли в С++ оператор вазврата типу goto label 1; FE #include.... ........ ........ 1:if(условие) .......... else goto 1
C++ Ошибка при работе со структурой http://www.cyberforum.ru/cpp-beginners/thread96701.html
#include <iostream.h> #include <conio.h> #pragma argsused float v; struct GOODS { unsigned quantity; float price;}; void cost(GOODS &goods) {v=goods.price*goods.quantity;} int...
C++ Грузовой автомобиль выехал из одного города в другой... Составить программу для решения текстовой задачи. Грузовой автомобиль выехал из одного города в другой со скоростью км/ч. Через t ч в этом же направлении выехал легковой автомобиль со скоростью ... подробнее

Показать сообщение отдельно
Зоти Сергей
228 / 226 / 13
Регистрация: 18.12.2009
Сообщений: 316
19.02.2010, 14:45
Цитата Сообщение от Genius Ignat Посмотреть сообщение
Добавлено через 52 секунды
указателя на указатель хранит начало двумерного массива: адрес первого указателя.
Добавлено через 29 секунд
указателя на указатель хранит начало двумерного массива: адрес первого указателя.

Да, это правильно. так вы в функцию и передаете указатель на указатель.
А попробуйте в Вашу ф-цию func(**int)
передать статический массив.
например

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
        int Width=10;
        int Height=10;
        int ** Array = new int * [Width];
        for(int i=0;i<Width;i++)
        Array[i]= new int[Height];
        for(int y=0;y<Height;y++)
                for(int x=0;x<Width;x++)
                        Array[x][y]=x+y;
 
        func(Array,Height,Width);       //ошибки не выдаст.
 
        
 
        int SecondArray[10][10];
         for(int y=0;y<Height;y++)
                for(int x=0;x<Width;x++)
                        SecondArray[x][y]=x+y;
 
        
         func((int**)&Array[0][0],Height,Width); //А вот это ошибка хотя передаете массив
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru