Вказівник void у C — це вказівник, який не має певного типу, тобто він може вказувати на змінні кількох типів даних. Під час розіменування цих покажчиків для доступу до змінних ми повинні їх привести, щоб уникнути помилок.
Переваги використання Void Pointer Це дозволяє нам використовувати ці методи для виділення пам'яті будь-якого типу даних за нашим вибором. У мові програмування C покажчики пустот використовуються для реалізації загальних функцій. Наприклад, функція qsort() у стандартній бібліотеці C.
Покажчик на void можна використовувати в загальних функціях у C, оскільки він здатний вказувати на будь-який тип даних. Можна призначити вказівник void з адресою будь-якого типу даних, а потім призначити вказівник void будь-якому вказівнику, навіть не виконуючи якогось явного приведення типів. Отже, це зменшує ускладнення в коді.
Розглянемо приклад оголошення та ініціалізації покажчика void у C: int i=10; char ch='a'; недійсний *vp= &i; vp=&ch; У наведеному вище прикладі ми помітили, що vp є вказівником на пустоту; ми можемо змусити його вказувати на змінну типу char і змінну типу int.
Незважаючи на численні переваги, покажчики пустот у C мають кілька обмежень: Покажчики Void неможливо розіменувати. Арифметика покажчиків неможлива з покажчиками void через їх фіксований розмір.
У мові C приведення – це конструкція для тимчасового перегляду об’єкта даних як іншого типу даних. Коли ви перетворюєте вказівники, особливо для покажчиків на об’єкти, не пов’язані з даними, враховуйте наступні характеристики та обмеження: Ви можете привести вказівник на інший вказівник того самого типу вказівника OS/400.