Для чего нужен двойной указатель? - C (СИ)

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

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

Нужно качественное объяснение для чего нужен двойной указатель? Где он применяется? И покажите пример кода для обращения к двумерному массиву через указатель на указатель. Язык Си, важно!
вопрос в силе

Решение задачи: «Для чего нужен двойной указатель?»

textual
Листинг программы
  1. void toNull(int ** ptr)
  2. {
  3.    // функция, обнуляющая указатель ptr
  4.    *ptr = NULL;
  5. }
  6.  
  7. void main()
  8. {
  9.    int *myPtr;
  10.    
  11.    toNull(&myPtr); // теперь myPtr = NULL
  12. }

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

  1. В данном коде представлена функция toNull, которая принимает двойной указатель на целочисленный массив и обнуляет его.
  2. В функции main создаётся указатель на целочисленный массив с именем myPtr.
  3. Затем вызывается функция toNull, передавая ей адрес указателя myPtr.
  4. Функция toNull обнуляет указатель myPtr, записывая в него значение NULL.
  5. Значение NULL означает, что указатель myPtr не указывает на определенный целочисленный массив в памяти компьютера, а указывает на специальное значение, которое обычно используется для обозначения неизвестного или неинициализированного значения.
  6. Значение NULL часто используется в программировании для обозначения неизвестного или неинициализированного значения указателя.
  7. После выхода из функции main, указатель myPtr останется в состоянии NULL.
  8. Если попытаться использовать указатель myPtr для доступа к элементам целочисленного массива, программа выдаст неопределенное поведение, так как myPtr не указывает на действительный адрес в памяти компьютера.
  9. Чтобы исправить это, указатель myPtr должен быть инициализирован адресом действительного целочисленного массива перед его использованием.

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


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

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

9   голосов , оценка 4.444 из 5

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

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

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