@famousman204

Что означает void *?

Помогите пожалуйста разобраться?
typedef struct    s_list 
{
    struct s_list *next;
    void *data; // что означает это строчка?
} t_list;

я понимаю что void перед функцией значит, что функция не будет возвращать значение, а что значит void перед указателем?
  • Вопрос задан
  • 259 просмотров
Решения вопроса 2
mayton2019
@mayton2019
Bigdata Engineer
void * означает указатель на область памяти неизвестного типа. При разыменовании тебе надо будет
заранее знать что за зверь скрывается под этой памяти чтобы правильно интерпретировать результат.

В современном программировании безтиповые указатели - считается угрозой безопасности и большинство компилляторов выдают WARNING. При прочих равных условиях лучше void * не использовать а использовать ... ну например указатель на массив байт или на такую-же структуру s_list к примеру.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы