0
#include<stdio.h>
#include<stdlib.h>
struct test
{
    int *p;
};
typedef struct test * TESTP;
struct ex
{
TESTP *testpp;
};
typedef struct ex * EXP;
void main(void)
{
    int x=10;
    struct test t2; 
    TESTP t1=(struct test *)malloc(sizeof(struct test));
    EXP e1=(EXP)malloc(sizeof(struct ex));
    (e1->testpp)=&t1;
    t1->p=&x;
    printf("%d\n",**(e1->testpp));
}

我想通过使用 e1 追溯存储在指针 p(即 10)处的值。有可能追踪吗?此代码意外编辑,我不确定这是否有效。如果它有效,请告诉我如何使用'e1'追溯到'p'中的值。

4

1 回答 1

2

您希望能够从e1get to finally 开始取消引用链p

这是你如何做到的:

printf("%d\n",*((*(e1->testpp))->p));
于 2013-07-24T13:30:06.227 回答