取消引用结构指针内的指针

我有一个结构:

struct mystruct { int* pointer; }; structure mystruct* struct_inst; 

现在我想更改struct_inst->pointer的值。 我怎样才能做到这一点?

编辑

我没有写它,但pointer已经指向一个用malloc分配的内存区域。

和任何指针一样。 要更改它指向的地址

struct_inst->pointer = &var;

要更改它指向的地址的

*(struct_inst->pointer) = var;

你正在创建一个mystruct类型的指针,我想也许你不想要一个指针:

 int x; struct mystruct mystruct_inst; mystruct_inst.pointer = &x; *mystruct_inst.pointer = 33; 

如果您需要在堆上使用mystruct指针:

 int x; struct mystruct *mystruct_inst = malloc(sizeof(struct mystruct)); mystruct_inst->pointer = malloc(sizeof(int)); *(mystruct_inst->pointer) = 33; /*Sometime later*/ free(mystruct_inst->pointer); free(mystruct_inst);