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

про функции и 2х мерный массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Строки и файлы http://www.cyberforum.ru/cpp-beginners/thread34277.html
Здравствуйте, уважаемые форумчане. Прошу помочь с написанием 2 программ на С. 1.Написать программу, которая преобразует введенное с клавиатуры двухразрядное шестнадцатеричное число в десятичное...
C++ Шальной байт в бинарном файле Здравствуйте, форумчане. Столкнулся с такой проблемой при использовании оператора write(memblock, sizeof(memblock)) для записи в бинарный файл: если в memblock присутствует байт 0x0A, то программа... http://www.cyberforum.ru/cpp-beginners/thread34270.html
C++ Найти среднее значение элементов массива
Добрый вечер, прошу помочь мне с тремя задачами,крайне необходима помощь... задача№1:задан одномерный массив,который содержит 27 элементов целых чисел. 1.найти среднее значение элементов массива...
Слова английского текста рассортировать по возрастанию количества заданной буквы в слове C++
Создать динамический массив строк как динамический массив указателей на строки . Слова английского текста рассортировать по возрастанию количества заданной буквы в слове. Слова с одинаковым...
C++ структуры подскажите с функцией http://www.cyberforum.ru/cpp-beginners/thread34253.html
Ребята умы програмирования подскажите с функцией долбаюсь не могу никак дойти до ума задача такая: Предметная область - бухгалтерия предприятия. Решаемые задачи - учет труда и зарплаты...
C++ Одномерные массивы Задать 2 вектора A(n) и B(m). Выполнить такие задания: -найти вектора C, D и E из элементов векторов A и B так, чтобы в С находились только отрицательные элементы, в D - положительные в порядке... подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
18370 / 6417 / 441
Регистрация: 30.03.2009
Сообщений: 17,803
Записей в блоге: 28
16.05.2009, 16:53
Ни в чём. При вычислении адреса элемента ar[x][y] используется только вторая размерность массива (3), первая нужна только для вычисления размера массива. Поскольку мы его передаём по указателю, то оно нужно только для красоты. Всё равно все варианты хреновые, т.к. в твоём случае одно измерение подаём параметром, а другое зашито внутри процедуры. В моём случае оба значения зашиты (т.е. черезжопность равномерная).

Правильно было бы подавать указатель на первый элемент и две размерности, но тут только через адресную арифметику типа

C
1
2
3
4
5
6
7
8
9
10
11
12
void mac (int *ar, int x, int y)
{
  for (i = 0; i < x; i++)
    for j = 0; j < y; j++)
      *(ar + i*y + j) = <инициализируем>
}
 
main ()
{
  int a[2][3];
  mac ((int*)a, 2, 3);
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.