|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.10.2011, 14:34 | #1 |
Регистрация: 22.06.2011
Сообщений: 7
|
Передача двумерного массива в функцию
Здравствуйте,подскажите пожалуйста как передать двумерный массив в функцию?
Например,мне нужно передать два массива - mas1(массив - черновик),mas(массив - образец),функция приравнивает mas1 к mas,но я не знаю как передать их в функцию(( Пробовал вот так: void rewrite(int (&m)[N][M],int (&m1)[Z][X]) , но при выводе оказывается,что передаётся только часть массива... |
25.10.2011, 15:34 | #2 |
C++,DirectX/OpenGL
Форумчанин
Регистрация: 09.01.2011
Сообщений: 422
|
И что вы хотите сделать, копировать элементы одного массива в другой ?
|
25.10.2011, 19:30 | #3 | |
Форумчанин
Регистрация: 01.07.2011
Сообщений: 423
|
Цитата:
Код:
Со мной можно встретиться на www.clipper.borda.ru
|
|
26.10.2011, 07:23 | #4 |
Пользователь
Регистрация: 23.09.2011
Сообщений: 17
|
Вот правильное объявление:
Код:
Последний раз редактировалось Бинари; 26.10.2011 в 07:25. |
26.10.2011, 11:59 | #5 |
Старожил
Регистрация: 19.08.2009
Сообщений: 2,119
|
Бинари
имя двумерного массива есть указатель на указатель это полный бред. попробуй, например вызвать эту функция для такого массива: int m[10][20]; zero(m, 10, 20); где прототип у zero = void zero(int** m, int N, int M); и внутри zero обнулить все ячейки массива. потом сообщи о результатах :D
А вы почему со мной не соглашаетесь, у вас что, импотенция? (c) ACE Valery
|
26.10.2011, 19:04 | #6 | |
Форумчанин
Регистрация: 01.07.2011
Сообщений: 423
|
Цитата:
Во-первых, массив не является указателем! Просто в выражениях, где задается имя массива, в том числе и при передаче аргументов функции, имя массива преобразуется в указатель на его первый элемент. Так как массив из вопроса двумерный, то он преобразуется в указатель на первый элемент, которым в свою очередь является одномерный массив. Поэтому двумерный массив преобразуется в указатель на одномерный массив, а не в указатель на указатель, как вы написали! Например, если имеется массив Код:
Код:
Со мной можно встретиться на www.clipper.borda.ru
|
|
27.10.2011, 17:15 | #7 |
Регистрация: 22.06.2011
Сообщений: 7
|
Дак дело в том,что N и M - это числовые константы...
|
27.10.2011, 21:41 | #8 |
Регистрация: 22.06.2011
Сообщений: 7
|
Ответьте пожалуйста конкретнее,как передать двумерный массив в функцию,точнее напишите примерный код,например обнуления переданного массива внутри функции!Заранее благодарю!
|
28.10.2011, 19:52 | #9 |
Регистрация: 09.06.2010
Сообщений: 4
|
3. Написать функцию, которая вычисляет количество столбцов матрицы, не содержащих число, полученное функцией в качестве второго аргумента.
#include "tchar.h" #include "stdio.h" #include "conio.h" #include "stdlib.h" #include "locale.h" #include "time.h" #include "Math.h" int iCol(int iArray[4][4],int a) { int k=0; bool bC=false; for (int i=0; i<4; i++) { for (int j=0; j<4; j++) if (iArray[j][i]==a) { bC=false; break; } else bC=true; if(bC==true) k++; } return k; } int _tmain(int argc, _TCHAR* argv[]) { setlocale(0,""); srand(time(NULL)); int iArr[4][4]; for (int i=0; i<4; i++) for (int j=0; j<4; j++) iArr[i][j]=rand()%10+1; printf("Массив\n"); for (int i=0; i<4; i++) { for (int j=0; j<4; j++) printf("%5i",iArr[i][j]); printf("\n"); } printf("\n Количество столбцов в которых нет числа 4 == %d \n",iCol(iArr,4)); return 0; } вот тут передал двумерный массив в функцию. Потестил вроде работает как надо. |
27.11.2011, 16:17 | #10 |
Регистрация: 22.06.2011
Сообщений: 7
|
А поменьше код можно?Конкретного способа(правильного по синтаксису) не существует что-ли?
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Передача двумерного массива в функцию | FelixXXI | Общие вопросы C/C++ | 3 | 27.08.2011 18:08 |
[C++ Builder] Передача двумерного массива в функцию | newStudent | Помощь студентам | 1 | 26.11.2010 10:46 |
Передача двумерного массива в функцию | StudentPolitech | Общие вопросы .NET | 9 | 30.10.2010 22:20 |
Передача в функцию двумерного массива структур | Spandei | Общие вопросы C/C++ | 1 | 21.05.2010 01:11 |
Передача двумерного массива в функцию | Megapixar | Общие вопросы C/C++ | 12 | 01.04.2010 16:04 |