То, что вы, похоже, хотите, - это интерпретировать ваш writeaddress
, как если бы он указывал на объект вашего struct
, а затем получить доступ к адресу ieee_address
члена.
Способ, которымвсе, что нужно сделать в C:
((FACTORY_CONFIG*)writeaddress)->ieee_address
, вот и все.
Метод, который вы использовали, очень опасен, потому что вы не знаете, как ваш компилятор будет размещать struct
в памяти.Если вам нужно, есть макрос offsetof
для получения точного положения поля.
Кстати, наличие псевдонима типа во всех заглавных буквах противоречит общему стилю кодирования и привычкам каждого.Обычно все заглавные буквы зарезервированы для макросов.