iOS——结构体

来源:互联网 发布:dijkstra算法步骤s=, 编辑:程序博客网 时间:2024/06/06 10:03

结构体: 是开发者自己定义的一种数据类型。

结构体的组成:

typedef struct 结构体变量名/old name{
成员变量类型1 成员变量名1;
成员变量类型2 成员变量名2; // 成员之间用 ;隔开
…. ….
}new name;

例如:struct student {

  char name[20];  long number;  char gender;  int  age;

};

结构体的赋值:

* struct 结构体变量名 自定义名称 = {成员变量名1 ….};* 赋值的顺序一定要和结构体成员定义的顺序保持一致;

例如:
struct student stu1= {“werg”,108,’m’,200};
struct student stu2 = {“lisi”,103,’m’,500};

struct + 结构体变量名 : 这两者放一起才是一个数据类型名(int/float)

给一个结构体起别名:需要用大驼峰命名法(首字母大写)
起别名的格式:
1.先定义结构体,在起别名
2.定义结构体的同时,这时就不能呢定义结构体变量了
方式一: 如上例中的褐色字体
方式二: typedef struct oldname newname;

// 访问结构体数组中的元素,也是通过数组的下标来访问;

如何访问结构体变量:

* 先访问结构体变量的成员* 输出结构体变量stu中的name : stu.name* 使用点语法访问的结构体变量的成员,点可以理解为:“xx的”的意思* 结构体变量名 . 成员变量名   就可以访问成员变量名里的值

// 将学生stu1的名字改为“tingfeng”:
注意: 由于姓名是字符串,不能直接赋值
strcpy(stu1.name,”tingfeng”);

结构体变量可以直接给另外一个结构体变量赋值
结构体变量里边的数组可以为另一个结构体变量直接赋值
stu 1 = stu 2;

结构体的输出:
printf(“%s\n”,stu1.name); // 输出stu1中的姓名
printf(“%d\n”,stu1.age); // 输出stu1中的年龄
printf(“%ld\n”,stu1.number);// 学号
printf(“%c\n”,stu1.gender); // 性别

0 0