# include <stdio.h>
/*
* 链表预备知识: typedef给数据类型(int、char、struct Student...)再取一个名字,两个都能用
* 2016年6月9日13:35:54
*/
typedef struct Student stt2; //struct Student数据类型再定义一个新名字:stt; 注: Student不是一个类型,struct Student才是一个数据类型
typedef struct Student
{
int sid;
char name[100];
char sex;
} stt3; //也可以这样写
int main(void)
{
struct Student st;
st.sid = 100;
printf("%d\n", st.sid);
stt2 st2;
st2.sid = 30;
printf("%d\n", st2.sid);
stt3 st3;
st3.sid = 20;
printf("%d\n", st3.sid);
return 0;
}
P12_2:
# include <stdio.h>
/*
* 链表预备知识: typedef给数据类型(int、char、struct Student...)再取一个名字,两个都能用
* 2016年6月9日14:28:14
*/
typedef struct Student
{
int sid;
char name[100];
char sex;
}* PST; //这样写PST就代表struct Student* 类型,指针
int main(void)
{
struct Student st;
st.sid = 100;
printf("%d\n", st.sid);
PST pst = &st;
pst->sid = 99;
printf("%d\n", pst->sid);
return 0;
}
P12_3:
# include <stdio.h>
/*
* 链表预备知识: typedef给数据类型(int、char、struct Student...)再取一个名字,两个都能用
* 2016年6月9日14:47:45
*/
typedef struct Student
{
int sid;
char name[100];
char sex;
} STU, *PSTU; //这样写PSTU就代表struct Student* 类型指针,STU代表struct Student类型。两个一起连着写更方便!
int main(void)
{
struct Student st;
st.sid = 100;
printf("%d\n", st.sid);
STU st2;
st2.sid = 90;
printf("%d\n", st2.sid);
PSTU pst = &st2;
pst->sid = 99;
printf("%d\n", pst->sid);
return 0;
}