- [code]//结构体的特点
- //同一个作用域内不能定义重名的结构体,若与全局结构体重名,则遵循就近原则
- #include <stdio.h>
- //全局结构体
- struct Person66{
- char *name;
- int age;
- };
- int main(){
- // 可以在定义结构体类型的同时定义结构体变量名
- //第一种
- struct Person{
- char *name;
- int age;
- };
- struct Person per={"cat",20};
- //第二种 因为前面的整体类似于 int
- struct Person1{
- char *name;
- int age;
- } per1={"cat1",21};
- //第三种
- struct Person2{
- char *name;
- int age;
- } per2;
- per2.name="heima";//此处不能这样定义:per2={"heima",18};
- per2.age=18;
- //第四种 匿名类型结构体 但是必须同时初始化变量 不能复用,只能将语句全部再来一遍
- struct {
- char *name;
- int age;
- } per3;
- struct {
- char *name;
- int age;
- } per4;//定义第二个要再来一遍
- per3.name="heima";
- per3.age=18;
-
- // 也可以这样嵌套定义
- struct Sun{
- char *name;
- int age;
- };
- struct Father{
- char *name;
- int age;
- struct Sun;
- }
- return 0;
- }
复制代码 [/code] |
|