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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ создать функцию. http://www.cyberforum.ru/cpp-beginners/thread96734.html
Помогите создать функцию. Входной параметр - char Buffer. Но имя буффера будет постоянно разным. так же как и его размер. функция должна посчитать контрольную сумму и отправить все в СОМ порт. Как заставить ее работать для любой переменной char любого размера. Размер char так же важен для рассчета суммы внутри функции
C++ Указатели В общем с++ прошел мимо меня... стыдно мне такие вопросы задавать, но что делать...) Если пишем int* n1; то n1 - это указатель на переменную типа int *n1 - получаем значение, которое хранится по этому адресу в памяти что означает &n1? http://www.cyberforum.ru/cpp-beginners/thread96724.html
C++ ПосоветуйтЕ
Хочу СПросиТь есть ли в С++ оператор вазврата типу goto label 1; FE #include.... ........ ........ 1:if(условие) .......... else goto 1
Ошибка при работе со структурой C++
#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 main()
C++ Грузовой автомобиль выехал из одного города в другой... http://www.cyberforum.ru/cpp-beginners/thread96695.html
Составить программу для решения текстовой задачи. Грузовой автомобиль выехал из одного города в другой со скоростью км/ч. Через t ч в этом же направлении выехал легковой автомобиль со скоростью км/ч. Составить программу, определяющую, догонит ли легковой автомобиль грузовой через ч после своего выхода. Что то я ее не могу додумать. Вроде работает правильно, но мне кажется, что там...
C++ дерево // derevo_lr2.cpp : Defines the entry point for the console application. #include "stdafx.h" #include "iostream" using namespace std; #include "conio.h" #include "string.h" #define VER 50 #define SIZE 20 подробнее

Показать сообщение отдельно
Зоти Сергей
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); //А вот это ошибка хотя передаете массив
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru