De otra pregunta en stackoverflow se hace evidente que sí, puedes encontrar el Dirección de una estructura si conoce a uno de sus miembros.
Entonces, si conoce la dirección de inicio de la estructura de su estructura y conoce la cantidad de bytes por estructura. Luego puedes usar la división simple para descubrir qué estructura es.
Ejemplo
Todo está en la base 10
Digamos que tenemos una matriz que comienza en la dirección 350 y encontramos un miembro de una estructura desconocida en la dirección 482. Digamos que cada estructura contiene 7 bytes de memoria.
Luego, la dirección de 482 es parte del número de estructura \ $ \ frac {482-350} {7} \ approx 18.85 \ rightarrow 18 \ $ .
Todo se redondea automáticamente si solo usas números enteros en todas partes.
Aquí vine con el número 7 para el número de bytes por estructura, en su caso, debe usar el comando sizeof .
Editar
Si necesita recurrir a este tipo de soluciones, entonces algo está muy mal con su código. O tu control allí de. Creo que he resuelto un problema XY , uno de mis mayores temores ha Hacerse realidad.
No veo ninguna realidad donde esta solución es la correcta, por lo que esta solución es claramente el último recurso de algún tipo. Si es debido a limitaciones reales, o la limitación de su imaginación, esa es la pregunta.