У меня есть функция, которая принимает параметр void * как параметр, но я хочу использовать его, как если бы это была структура.Передача struct как параметра вместо void *
typedef struct struct1
{
int val;
} struct2;
void func1(void* struct3)
{
printf("%d",struct3->val);
}
Моя цель состоит в том, например, если у меня есть файл .h, где функция определяется как
typedef void* parameter1;
void func1(parameter1 p1);
И хочет использовать-структуру в качестве параметра этой функции, не объявляя struct в файле .h.
Пожалуйста, не используйте указатели void. Обычно он заканчивается в слезах –
, вы не можете использовать '->' на указателе void, вам нужен указатель структуры или, как минимум, листинг. –
Тогда как передать структуру как параметр, как я упоминал выше, не определяя его в файле .h? –