15 / 15 / 8
Регистрация: 15.08.2013
Сообщений: 190
1

Зачем при передаче матрицы в функцию, передавать вторым аргументом её размер, если в первом он уже указан?

24.10.2016, 11:07. Показов 642. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день господа.Объясните пожалуйста почему при вызове функции f() В левый индекс ничего не засовывается
и для чего нужен правый аргумент
C++
1
const int Size
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
26
27
28
29
30
31
32
33
34
35
#include <iostream>
#include <ctime>
#include <cstdlib>
 
using namespace std;
 
const int Size=5;
void f(int[][Size],const int Size);
 
int main()
{
srand(time(0));
 
int array[Size][Size];
f(array,Size);
 
 
return 0;
}
 
void f(int array [][Size],const int Size)
{
int min=30;
int max=60;
 
        for(int i=0;i<Size;i++)
        {
                for(int j=0;j<Size;j++)
                {
                array[i][j]=min+rand()%(31);
                cout<<array[i][j]<<' ';
                }
        cout<<'\n';
        }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.10.2016, 11:07
Ответы с готовыми решениями:

Зачем передавать в функцию X указатель на callback функцию, если последняя ВНЕШНЯЯ и вызовется БЕЗО ВСЯКОГО УКАЗАТЕЛЯ?
Собсно. То есть ребята, вот пример отсюда: http://www.cplusplus.com/reference/algorithm/count_if/...

Можно ли как-нибудь передавать функцию в аргумент сразу со своим аргументом?
День добрый. Изучаю Си в качестве хобби, что-ли. Уровень владения на данный моменет - написание...

Копирование файла, указанного первым аргументом, в папку, часть пути к которой указана вторым аргументом
Добрый день. Есть два задания из лабораторной работы. Я бы с радостью их сделал где угодно, кроме...

Одинаково ли быстродействие: 1. при передаче параметров в функцию или 2. создание кортежа и передаче его в функцию?
Одинаково ли быстродействие: 1. при передаче параметров в функцию или 2. создание кортежа и...

4
132 / 158 / 87
Регистрация: 06.04.2016
Сообщений: 992
24.10.2016, 11:13 2
Правый аргумент - размер квадратного массива. А что в 8 строке нет ошибки?
0
15 / 15 / 8
Регистрация: 15.08.2013
Сообщений: 190
24.10.2016, 11:15  [ТС] 3
DemolitionMan, 8 строке ошибки нету

Добавлено через 41 секунду
DemolitionMan, а как понять ?
Правый аргумент - размер квадратного массива
0
17 / 17 / 2
Регистрация: 23.02.2012
Сообщений: 132
24.10.2016, 11:23 4
уфф... Как же объяснить...
Та запись, которую вы используете, является упрощенной. Это можно записать еще так:
C++
1
void f(int  (*array)[Size], const int Size)
То есть получается что второй аргумент говорит, что передается Size указателей. А сам указатель, указанный в первом аргументе, ссылается на массив из Size элементов.
0
Вездепух
Эксперт CЭксперт С++
11691 / 6370 / 1723
Регистрация: 18.10.2014
Сообщений: 16,052
24.10.2016, 11:37 5
Цитата Сообщение от MRG_Serejka Посмотреть сообщение
и для чего нужен правый аргумент
Правый аргумент может пригодиться в тех случаях, когда надо работать с каким-то более маленьким под-массивом внутри основного массива 5x5. Например, 3x3. Но в коде эта возможность никак не используется. Да и не нужна она там никому.

Добавлено через 2 минуты
Цитата Сообщение от Wurgengel Посмотреть сообщение
То есть получается что второй аргумент говорит, что передается Size указателей.
Во-первых, "не Size указателей", а указатель на массив из Size элементов типа int.

Во-вторых, Size в объявлении первого параметра не имеет никакого отношения ко второму параметру. Size объявлении первого параметра - это глобальная константа Size.

Второй параметр следовало бы переименовать, чтобы не было этого бессмысленной одинаковости никак не связанных друг с другом имен.
1
24.10.2016, 11:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.10.2016, 11:37
Помогаю со студенческими работами здесь

Узнать общее количество записей если уже указан LIMIT
Есть выборка из базы с ограничением выборки последних 5 записей $article = mysql_query(&quot;SELECT...

Почему нужно указывать адрес отправителя почты, если он уже указан в JavaMailSender
конфигурационный файл @Configuration @PropertySource(value =...

Определить размер файла при загрузке на сервер и отменить загрузку, если она уже началась
На случай, если браузер посетителя не поддерживает File API (загрузка файлов на сервер через...

Зачем при перегрузке инкремента дружественной функцией передавать аргумент по ссылке?
В программе реализованы два инкремента: префиксный и постфиксный. Зачем в функции передавать...

написать функцию с одним аргументом – списком. Если функция из п. а) возвращает t, создать список из четырех элементов:
Всем привет! Задание: а) Напишите функцию, единственный аргумент которой является списком....


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru