Разобрать пример обращения к элементу матрицы - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуйста решить такую задачу на C: Необходимо набить двумерный массив строк типа массив[строка][столбец] = "значение". Я пробовал так:
Листинг программы
  1. char * names_array[<номер дома>][<номер квартиры>] = <Имя жильца>;
но не сработало при присвоении значения элементу массива[строка][столбец+1], перезаписывается и массива[строка][столбец] Как надо? Спасибо

Решение задачи: «Разобрать пример обращения к элементу матрицы»

textual
Листинг программы
  1. //char** arrsym = (char**) malloc(4);
  2. char  * arrsym[20][20] = ""; //сюда нужен маллок, такой(         (char**)malloc(400)         )?
  3.  for(int i = 0; i < 4; i++)
  4.            {
  5.           for (int k = 0; k < 10 ; k++)
  6.                    {
  7.                     arrsym[i][k] = (char*) malloc(256);
  8.                   arrsym[i][k] = "vasya";
  9.                  }
  10.           }                    
  11.  for(int i = 0; i < 4; i++)
  12.              {
  13.              for (int k = 0; k < 10 ; k++)
  14.                      {
  15.                      printf("%s\n" , arrsym[i][k]) ;
  16.                      }
  17.             }

Объяснение кода листинга программы

  1. В начале кода выполняется запрос на выделение памяти под массив указателей на строки с помощью malloc(4). Однако, данная операция не является безопасной и может привести к ошибке сегментации при попытке доступа к выделенной памяти.
  2. Затем создается двумерный массив arrsym размером 20x20, который в цикле заполняется строками, выделенными с помощью malloc(256).
  3. Строки в цикле присваиваются значение vasya.
  4. После заполнения массива, в цикле по нему выводится каждая строка с помощью функции printf.
  5. В конце кода необходимо освободить выделенную память с помощью free().

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы