话不多说,全在代码里哦
#include<stdio.h>
/*struct是关键词,后面紧跟的是结构体类型的标识符如:st1
(当然可以不定义标识符,但是不方便后续索引到该结构体类型)
typedef只是为变量或者类型取别名,不会产生新类型;
//4中 struct st4<==>b;
//4和//5中其实b、c不同于//2中的a,b、c是改名后的结构体类型标识符(原名依旧可用),而a是定义的结构体变量;*/
//个人理解,欢迎指正;
//1
struct st1
{
int age;
};
//2
struct st2
{
int num;
}a;
//3
typedef struct st3
{
int grades;
};
//4
typedef struct st4
{
int shu;
}b;
//5
typedef struct
{
int nnn;
}c;
void main()
{
//1
struct st1 s1;
s1.age=111;
printf("%d\n",s1.age);
//2
a.num=222;
printf("%d\n",a.num);
//3
struct st3 s31;
s31.grades=333;
printf("%d\n",s31.grades);
//4
b st4;
st4.shu=444;
printf("%d\n",st4.shu);
//5
c st5;
st5.nnn=555;
printf("%d",st5.nnn);
}
/*
typedef char* s;
s p;
等价于:
char *p;
*/