• C语言中的结构体


    宏在进行编译的阶段会进行替换,宏替换或者是宏展开。带参数的宏,机械的进行展开就可以了。

    多维数组在做参数的时候会退化成为一个指针。

    指针数组的自我结束能力,指的是最后一个元素为0,用来表示指针已经达到的结尾。

    在C语言中‘’和0和NULL是同一回事。只是表达的环境不同而已。

    知道在什么框架下干的活。

    结构体类型定义和结构体变量的定义。

    如何定义一个结构体类型。

    struct关键字

    struct Teacher{

        char name[64];

        int age;

        int id;

    };

    定义变量的方式:

    struct Teacher tea;

    这里定义一个数据类型,数据类型是固定大小的内存块的别名。

    这里相当于是定义了一个数据类型,然后用这个数据类型来分配变量。

    类型的重定义用typedef,结构体可以用typedef来进行重定义。

    typedef struct Teacher{

        char name[64];

        int age;

        int id;

    } Teacher;

    定义变量的方式:

    Teacher tea;

    用结构体类型定义变量的方式有三种:

    定义类型的同时定义变量

    定义匿名类型的时候定义变量

    用结构体类型来定义变量

    初始结构体变量的三种方法:

    用结构体定义变量的时候初始化结构体变量

    在定义匿名结构体定义结构体变量的时候初始化结构体变量

    结构体变量的引用

    .操作符是做什么的?有没有操作内存?

    .是寻址操作,是计算变量相对于结构体变量的偏移量,没有操作内存,在赋值的时候才操作内存。

    通过指针的方式操作内存空间,->

    ->也是在寻址,是计算变量相对于结构体变量的偏移,计算在CPU中,没有操作内存。

    结构体做函数参数的行为。结构体赋值=操作,编译器提供的行为?

    编译器提供了简单的=赋值操作。

    结构体元素做函数参数,结构体指针元素做函数参数的区别

    用元素和用指针是截然不同的。结构体变量做函数参数和结构体指针做函数参数。

    结构体做函数参数的基本操作。

    数组做函数参数会退化成为一个指针,因此需要将数组的长度给传递过去。

    结构体可以和参数结合起来,方便的分配内存空间。

    在进行函数调用的时候,如果是在主调函数中分配内存,就使用一级指针,如果在被调用函数中分配内存,就使用二级指针。

  • 相关阅读:
    字符序列(characts)
    装载问题(load)
    哈密顿路
    犯罪团伙
    回溯算法
    维修机器人
    旅行计划
    皇后游戏
    运输
    亲身实测可用的java实现wordxlsxpdf文件下载功能
  • 原文地址:https://www.cnblogs.com/andyniu/p/7625853.html
Copyright © 2020-2023  润新知