结构体

2018-10-30  本文已影响0人  SimpleSJ

1.什么是结构体

2.为什么要有结构类型?

3.结构体类型的定义方式

struct Student {
     char *name;
     int age;
 };
 struct Student stu;
struct Student {
    char *name;
    int age;
} stu;

第三种方法与第二种方法的区别在于第三种方法中省去了结构名,而直接给出结构变量,这种结构体最大的问题是,不能再次定义新的结构体变量了。

struct {
    char *name;
    int age;
} stu;

4.如何访问结构体变量的成员?

struct Student {
     char *name;
     int age;
 };
 struct Student stu;
 // 访问stu的age成员
 stu.age = 27;
 printf("age = %d", stu.age);

5.结构体变量的初始化

 struct Dog
    {
        char *name;
        int age;
        double height;
    };
    // 1.定义的同时初始化
    struct Dog sd = {"wc", 13, 5.0};

 // 2.先定义再初始化(逐个初始化)
    struct Dog sd1;
    sd1.name = "ww";
    sd1.age = 5;
    sd1.height = 10.9;

    // 3.先定义再初始化(一次性初始化)
    struct Dog sd2;
    // 特别注意: 结构体和数组有一点区别, 数组不能先定义再进行一次性的初始化, 而结构体可以
    // 只不过需要明确的告诉系统{}中是一个结构体
    sd2 = (struct Dog){"xq", 8, 8.8}; // 数组? 结构体?
    
    // 4.指定将数据赋值给指定的属性
    struct Dog sd3 = {.height = 1.77, .name = "ww", .age = 33};
上一篇下一篇

猜你喜欢

热点阅读