• c 语言 结构体


    一:结构体
    定义结构体类型变量 三种方式
    1st:先声明结构体类型,再定义该类型的变量
    struct student liming,zhangle;
    2nd:声明类型的同时定义变量
    struct student{int num; char name[10];}liming={11,"liming"},zhangle;
    3rd:不指定类型名而直接定义结构体类型变量

    struct {int num; char name[10];}liming={11,"liming"},zhangle;

    结构体变量的初始化和引用

    struct student
    { int num;
    char name[20];
    char sex[12];
    int age;
    float score;
    char adds[30];
    }liming = {39,"liming","nan",18,55.5,

    (1)对成员变量初始化
    struct zhangle={.name = "zhangle"};
    (2)引用
    zhangle.name
    (3)结构体多级
    student.birthday.month
    (4)结构体变量的运算
    liming.score = zhangle.score //赋值
    (5)同类结构体变量可以相互赋值
    liming = zhangle;
    二:结构体数组
    (1)
    struct Person leader[30]
    struct      结构体类型     数组名
    (2)赋值
    struct    Person        leader[30]  = {“ling”,20,"zhang",10,"liz",15};
    三:结构体指针
    (1)指向结构体变量的指针
    struct Student *p;
    p指向结构体变量 下面三种用法等价
    stu.num

    (*p).num

    p->num
    (2)指向结构体数组的指针

    struct Student stu[5] = {10101,"zhang",78 ,
    10103,"wang ",98.5,
    10106,"li ",86 ,
    10108,"ling",73.5,
    10110,"sun ",100};

    struct Student *p;  //定义指向struct Student 结构体变量的指针变量

    for(p=stu;p<stu+5;p++)
    printf("%5d%6s%7.2f ",p->num,p->name,p->score);

    (3)结构体变量和结构体变量的指针作函数参数

    1:结构体变量的成员作参数。  “值传递”

    2:结构体变量作为实参。   “值传递”

    3:指向结构体变量的指针作实参。将结构体变量的地址传给形参。

    
    


  • 相关阅读:
    启动nginx出错:open() "/var/run/nginx/nginx.pid" failed (2: No such file or directory)
    linux vsftpd 550 create directory operation failed解决方法
    如何配置vsftpd
    配置<welcome-file>直接访问请求
    搭建solr集群的时候出现 ./zkcli.sh:行13: unzip: 未找到命令
    使用redis集群中遇到的错误
    存储过程
    查询
    sqlHelper
    一款批量修改AE模板的小工具
  • 原文地址:https://www.cnblogs.com/zle1992/p/5298021.html
Copyright © 2020-2023  润新知