怎么得到struct的指针?

如何得到struct的指针???比如定义structstruct_A{intm_1intm_2}structstruct_AXstructstruct_A*pXint*

如何得到struct的指针???
比如定义
struct   struct_A{
int   m_1;
int   m_2;
}

struct   struct_A   X;
struct   struct_A   *pX;
int   *p   =   X.m_2;
.......
.......

pX要得到指向结构体X的指针

[解决办法]
如何通过数据成员m_2的地址得到结构体的地址
还是来一个超必杀的答案吧
#define LIST_ENTRY(ptr, type, member) \
((type *) ((char *) (ptr) - (unsigned long) (&((type *) 0)-> member)))

调用如下:
LIST_ENTRY(p, struct A, m_2);