void main() {
int* p;
int n = 4;
p =(int*) malloc(sizeof(int)); //malloc函数默认返回void类型指针,必须强制类型转化
cout << *p;
}
#define ElementType char //ElementType和char用法和意义完全一致
ElementType c='c';
struct Stu {
int num;
}stu1; //Stu和stu1不同意义
void fun1() {
stu1.num=1; //stu1已经是结构体的具体对象
struct Stu st2; //Stu仅仅为结构体模板,struct可以省略
st2.num = 2; //初始化
struct Stu* p_stu; //定义一个指向结构体Stu类型的指针
p_stu = &stu1; //将stu1地址赋值给p_stu
p_stu->num = 2; //赋值
}
typedef struct Man {
int year;
}man; //Man和man用法和意义完全一致,都表示数据类型
typedef struct Man* Man_P; //Man_P为数据类型,指向结构体struct Man的指针
typedef Man_P Man_pp; //Man_P和Man__pp用法和意义完全相同
Man *man_p1; //man_p1为指向结构体的一个指针
void fun2() {
Man man1; //由结构体模板得到一个具体的数据
man1.year = 1;
man man2;
man2.year = 2;
Man_P man_p2; //得到一个指向结构体的指针man_p2
man_p1 = &man1;
man_p2 = &man2;
}
struct Stu {
int num;
}ST[3]; //定义结构体数组
void f() {
ST[1].num = 1;
}