01 变量// 01 先定义结构体 再 typedef 数据类型struct AAA{int value;struct AAA *x;struct AAA *y;};typedef struct AAA A;A in;// 02 定义结构体的同时 typedef 数据类型typedef struct AAA{int value;struct AAA *x;struct AAA *y;}A;A in;
02 指针// 01 不使用 typedefstruct AAA{int value;struct AAA *x;struct AAA *y;};AAA *p;// 02 定义结构体后再 typedef 数据类型struct AAA{int value;struct AAA *x;struct AAA *y;};typedef struct AAA A;A *p;// 03 定义结构体的同时 typedef 数据类型typedef struct AAA{int value;struct AAA *x;struct AAA *y;}A;A *p;// 04 同时 typedef 数据类型和一级指针typedef struct AAA{int value;struct AAA *x;struct AAA *y;}A,*AA;A in;AA *p;
// eg
#include<bits/stdc++.h>
using namespace std;typedef struct AAA
{int v;struct AAA *x;struct AAA *y;
}A,*AA;int main()
{A in;in.x=in.y=NULL;AA p=∈cin>>in.v;cout<<( p->v )<<endl;return 0;
}