#include <stdio.h> int main() { /*************************************************** * * 数组:由多个相同类型的数据构成 * 结构体:可以由多个不同类型的数据构成 * * 结构体的使用: * 1、定义结构体类型 * struct Person * { * int age; // 年龄 * double height; // 身高 * char *name; // 姓名 * }; * 注意最后面的分号(;)不能少。 * 2、根据结构体类型,定义结构体变量 * 方法一:定义的同时并进行初始化 * struct Person p = {20, 1.55, "jack"}; * 方法二:先定义后初始化 * struct Person p; * p.age = 20; * p.height = 1.55; * p.name = "jack"; * 结构体的初始化: * 1、使用大括号按照顺序进行初始化 * struct Person p = {20, 1.55, "jack"}; * 2、使用大括号不按照顺序进行初始化 * struct Person p = {.height = 1.78, .name="jim", .age=30}; * 注意:一下的错误写法: * 1、定义类型的最后面缺少分号 * struct Person * { * int age; // 年龄 * double height; // 身高 * char *name; // 姓名 * } * 2、定义变量时缺少struct * Person p; * 3、定义变量后使用大括号进行初始化 * struct Person p; * p = {20, 1.55, "jack"}; * * ****************************************************/ struct Person { int age; double height; char *name; }; struct Person p = {20, 1.55, "jack"}; printf("age = %d, height = %f, name = %s ", p.age, p.height, p.name); struct Person p1 = {.height = 1.78, .name="jim", .age=30}; printf("age = %d, height = %f, name = %s ", p1.age, p1.height, p1.name); struct Person p3; p3.age = 23; p3.height = 1.89; p3.name = "rose"; printf("age = %d, height = %f, name = %s ", p3.age, p3.height, p3.name); return 0; }
age = 20, height = 1.550000, name = jack age = 30, height = 1.780000, name = jim age = 23, height = 1.890000, name = rose