zoukankan      html  css  js  c++  java
  • C-结构体

    结构体

    概念

    结构体是一个或多个成员的集合,各个成员之间可能具有不同的数据类型

    结构体的声明

    声明结构体时,必须列出它包含的所有成员,具体包括每个成员的名字和类型

    栗子1如下图,声明了一个x变量的结构体,它包含三个成员变量:一个整数,一个字符,一个浮点数

    struct {
        int a;
        char b;
        float c;
    } x;

    栗子2如下图,声明了y和z,y是一个数组,包含10个结构体;z是一个指针,指向这个类型的结构体

    struct {
        int a;
        char b;
        float c;
    } y[10], *z;

    结构体的初始化

    struct date {
        int year;
        int month;
        int day;
    };
    
    //init method1
    struct date today1 = {2020, 01, 28};
    
    //init method2
    struct date today2 = {.year=2020, .month=01, .day=28};

    结构体的操作

    对于整个结构体,可以赋值,取地址,作为参数传递给函数,结构体作为函数的返回值

    结构作为函数参数,函数会在内部新建一个结构变量,并复制调用者的结构的值

    结构指针

    结构变量的名字并不是结构变量的地址,所以必须用&运算符

    用->表示指针所指向的结构变量的成员

    结构指针作为参数的好处:传入传出只是一个指针的大小

    如果想要传入的结构不被函数修改:const struct point *p

    返回传入的指针是一种套路

  • 相关阅读:
    JVM三部曲之运行时数据区 (第一部)
    c++鼠标点点,获取坐标值,放入到txt文件中
    自己实现的SVM源码
    SVM资料
    caffe源码解析
    caffe调试小结2
    caffe中卷积层和pooling层计算下一层的特征map的大小
    gpu对任意长度的矢量求和
    caffe代码调试小结
    caffe添加自己的层
  • 原文地址:https://www.cnblogs.com/marton/p/13381048.html
Copyright © 2011-2022 走看看