C语言结构体

#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\n", p.age, p.height, p.name);

    struct Person p1 = {.height = 1.78, .name="jim", .age=30};
    printf("age = %d, height = %f, name = %s\n", 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\n", 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

 

posted @ 2014-01-23 10:58  天之涯0204  阅读(154)  评论(0编辑  收藏  举报