#include <stdio.h>
#include <stdlib.h>
typedef struct st{
int a;
}ST, *ST1;
void test1(ST1 st)
{
ST1 sst = (ST1) malloc(sizeof(ST));
sst->a = 1111;
st = sst;
}
void test2(ST1 *st)
{
ST1 sst = (ST1) malloc(sizeof(ST));
sst->a = 2222;
*st = sst;
}
void test3(ST1 *st)
{
ST1 sst = (ST1) malloc(sizeof(ST));
sst->a = 3333;
st = &sst;
}
int main(){
printf("-------------\n");
ST1 ss = (ST1)malloc(sizeof(ST));
test1(ss);
printf("ss.a: %d \n",ss->a);
printf("-------------\n");
ST1 sss = (ST1)malloc(sizeof(ST));
test2(&sss);
printf("sss.a: %d \n",sss->a);
printf("-------------\n");
ST1 ssss = (ST1)malloc(sizeof(ST));
test3(&ssss);
printf("ssss.a: %d \n",ssss->a);
return 1;
}