Указатели и массивы Указатели


int mass2 [][2] = { {1. 1}. {0. 2}. {1. 0} }



бет12/12
Дата06.01.2022
өлшемі1,96 Mb.
#15493
түріУказатель
1   ...   4   5   6   7   8   9   10   11   12
int mass2 [][2] = { {1. 1}. {0. 2}. {1. 0} }:
int mass2 [3][2] = {1. 1. 0. 2. 1. 0}:

Пример. Программа определяет в целочисленной матрице номер строки, которая содержит наибольшее количество элементов, равных нулю.

Номер искомой строки хранится в переменной istr, количество нулевых элемен­ тов в текущей (i -й) строке — в переменной Kol, максимальное количество ну­ левых элементов — в переменной MaxKol. Массив просматривается по строкам,




  1. каждой из них подсчитывается количество нулевых элементов (обратите вни­ мание, что переменная Kol обнуляется перед просмотром каждой строки). Наи­ большее количество и номер соответствующей строки запоминаются.

Для создания динамического многомерного массива необходимо указать в опера­ ции new все его размерности (самая левая размерность может быть переменной), например:


int nstr = 5:
int ** m = (int **) new int [nstr][10]:
Более универсальный и безопасный способ выделения памяти под двумерный массив, когда обе его размерности задаются на этапе выполнения программы, приведен ниже:



  1. операторе 1 объявляется переменная типа «указатель на указатель на int» и вы­ деляется память под массив указателей на строки массива (количество строк — nstr). В операторе 2 организуется цикл для выделения памяти под каждую строку массива. В операторе 3 каждому элементу массива указателей на строки присваивается адрес начала участка памяти, выделенного под строку двумерного массива. Каждая строка состоит из nstb элементов типа int


Достарыңызбен бөлісу:
1   ...   4   5   6   7   8   9   10   11   12




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет