Si toutes les structures commencent par le même "préfixe", de sorte que vous pouvez atteindre les parties souhaitées au même décalage, alors vous pourriez faites ce préfixe un struct
et transmettez-lui un pointeur - une "version d'héritage pauvre". Si les portions désirées sont à des décalages différents dans différentes structures, vous ne pouvez pas vous contenter de passer juste un pointeur sur la fonction (sauf via une couche d'indirection, qui peut devenir encore plus complexe) - le plus simple peut être de passer un pointeur et un décalage, et utilisez l'arithmétique d'adresse pour atteindre la partie nécessaire. Il est difficile de donner des conseils plus spécifiques sans savoir comment vos différentes structures sont disposées et quelle (s) partie (s) d'elles la fonction doit atteindre!