粉丝1269获赞1.6万

大家好,咱们这节视频开始呢,给大家介绍一下我们这个函数的具体的知识了啊。首先呢我们先看这个函数的第一种形式,叫做无参无反的这么一种函数哈,那么这个呢,也是我给他简单的分一个类啊,什么叫做 无参无反着哈,要是我们这个函数的话呢,哎,他就看我们的主函数啊,主函数也是函数啊,所有的函数跟这形式都是一样的,函数呢有两个非常关键的点,第一个呢就是我们前面这个印的这个东西呢叫做返回值,还有我们的小括号里边这个东西呢叫做参数。 哎,这个叫参数,他无参无反的话呢,就是我们不使用反绘值也去不使用参数,那么呢也有的函数呢是使用反绘值,有的函数呢使用参 参数,有的函数呢,参数和返回程都使用,也就这两个东西的一个全排列,对吧?有你没你,有我没你的啊,就这这个啊,所以说就简单的分一下类啊,我们最基本的这个函数呢,就是我们函数 啊的参数和反复值,我都不去使用它,这就是一个最基本的函数形式啊。好,那咱们看一下这个基本形式,基本形式的话呢,它的长相呢,跟我们衣服结构了,外耳结构呢都是一样的,对吧?首先呢是我们这个结构的头部,然后紧接着是这个代码块啊,这个代码块呢,就是啊,这个体啊,就是身体的体啊。 好,首先呢我们看一下这个函数的形式,就是如下的这个这一行呢叫做函数头啊,函数头后面没有分号啊,一定要注意这个事哎,这是函数头,然后紧接着呢,这个大括号呢,就叫做函数体了哈,函数体,然后函数体里边写我们的这个代码块,我们将各种代码的封装到这个函数体里边, 这个大括号呢,是任何情况下都不能省略的啊,像是我们写衣服结构的时候呢,哎,大家呢说啊,当我们这个结构里边只有一条代码的时候啊,那么我们啊,不需要加这个大括号,对吧?但, 但是,哎,当我们这里边有多行代码的时候呢,就必须要加这个大货号了,我们函数这个东西跟这是不一样的,毕竟他叫函数,他这是什么?他这是个结构啊,函数呢,任何情况下都必须加上这个大货号啊,你这里边不管你有多少代码啊,一行两行甚至一行都没有,也必须要加这个大货号啊,这是大货号,不能省略啊,不要直接挪过来。 好,那这个的话呢,就直接研究我们这这个函数题里边代码跟我们主函数里边代码没有任何的区别哈。哎,主函数里写啥,你到这里边直接复制粘贴,都是一样的,明白吧?好,然后咱们主要呢看一下这个函数头啊,这块的信息比较多啊, 函数头,函数头呢,第一个位置呢,叫做 worry 的,对吧?哎,第一个位置叫做 worry 的,我们看主函数的这个函数,呃,函数头前面呢是个印堂,对吧?哎,这个 boy 的表示什么呀? worry 的呢?表示啊,函数的返回值啊,这个就是这个位置啊,是函数的返回值,那么, 哎,我 word 呢,表示没有返回值,就说我不用返回值,明白吧?哎,这就是他的作用, word 表示不用返回值,那我想要使用返回值的时候呢,哎,我呢就放上一个具体类型,比如说 double 啦,来印他,或者是一个数组类型,指针类型,任何类型呢,都可以,后面学什么结构体类型啦,函数类型啦,哎,都可以作为这儿 放在这,放到这个就是一个类型,放个 word 呢,就是不使用返回值哈,咱们返回值这块呢,在这详细的介绍啊,所以说这块呢,大家知道这个概念即可啊, 一个外的,然后紧接着范呢,就是函数的名字啊,函数的名字呢,就是合法的 c 语言。标识符就可以啊,比如说我们填补定义的,那么变量印的 a 啊,他那个呢都叫做标识符啊,这个,呃, 符合,符合这个标准就可以啊,不要也用一些特殊字符啊,这是函数的名字。然后紧接着呢是我们的这个小括号啊, 小括号的话呢,我们管他叫做参数列表哈,就小括号里边呢,是写参数的啊,传递参数,如果说呢,没有参数,我们就写一个 worry 的,也是表示无的意思,你看 worry 表示无反为值,这个位置呢表示无参数 啊,那么在学习这个,大家呢,看一些资料的时候呢,哎,这个位置呢,就很多资料呢,都没写这个 worry 的,这个呢,在 c 语言里边呢,是不标准的哎, c 语言里边呢,你写个空的,什么都不写,这个东西叫什么?叫做啊,叫做这个参数,个数和类型不确定, 哎,不确定的话呢,系统就会有相关的默认处理的机制,对吧?你直接加了一个 boy 的呢,哎,这个叫什么?这叫无啊,无就是明确的没有那么系统呢,就不会做任何的呃特殊处理了,哎,就是当无去处理,那无的话,这样的话是不是效率就更更高一点,哎,我们就从这个单纯的宏观角度去分析, 是不是我们写成这种形式呢,就效率更高,或者说,呃变异器的处理的时候呢,会更加的直接呀,对吧?所以说我们要把这个代码写的非常明确啊。这个呢就表示无的意思啊, 在私家家里边呢,哎,我们就不用加这个 word, 私家家里边呢,不加就表示无,哎。当然你在私家家里边加了,加了呢也没有任何问题啊,加了呢也表示无,不加呢也表示无,就是什么都没有 啊,而我们 c 员里边呢,必须要加上这个沃瑞的,这是新的标准啊,咱们老标准,老版本的这个标准呢就,呃就没有这个沃瑞的啊,但是我们新标准呢,一定要按照新的来,对吧?把这个事呢告诉大家哈, 这呢是这样的哈。然后紧接着函数体,函数体呢,就是我们封装的这个内容啊,大括号呢,不能省略我们自己的定义的函数呢,这叫做自定义函数啊,个数呢,随意一万个函数都行,咱们给大家写一下啊, 哎,把这些呢就是先有用的删掉啊,那么我们这个函数定义的位置放在哪啊?哎,就放在我们的跟主函数是同级别的啊,所以说你要定义在最外层啊, worry 的啊,比如我们这里边呢,哎,就写上一个普润的 f, 呃就可以了,哎,你看这就是这个函数啊,加个换啊, 习惯了啊,哎,这就函数,函数的话呢必须定义在最外头啊,跟我们主函数同级别的啊,就是最这个区域呢,也管他叫做全局区域。什么叫做全局区域啊?就是最外边没有比他更更外边的了对吧?那你放在主函数里头呢,这叫什么?哎,他就是局部的区域,他就在主函数的大括号里,他是属于一个局部的范围对吧?哎,放在这 行吗?不行哎,这个函数定义呢必须放在嘴外头,你看这已经爆错了啊,看, 哎,直接就啊,哎,若缺少分号啊,在什么时候前面,你看这个错误提示呢,并不是非常的明显,你都不知道是哪错了,哎,所以说我告诉你啊,哎,这个东西必须放在外头啊,因为很多小伙子定义的时候呢,哎,就他他由于血代码不太规范啊,他也主函数的时候呢,就把这个主函数的大块下边这个大货号啊放 这个空格顶的非常往下,然后的话呢这个代码一复制图卡放在这了,放在这呢就写成这样的了,写成这样我说你这个要要放在最外层,哎呦,我这就是最外层,你看我这就在最外层了吗?然后结果后面呢还有个尾巴, 所以说我们写代码的时候这个风格呢也要规范一点啊,不然的话你出错的时候啊,我也很难去看到你这个错误的点啊这是呃位置这个事啊,看一下课件这块还有啥说的吗?好,这块呢就没啥说的了哈,咱们下节视频讲调用。


man 快速生成主函数 c, t, r, l 加密删除指定行的代码 c, t, r, l 加深度加 o 再次导致多个包 稀奇的奥特加 a。 六一个电动泥 p t 二 l 加式将 f 格式化代码。

下面呢我们来看一下列表像末尾的一个插入的一个实验过程,那么 furtis 呢,提供了一个列表像末尾插入的一个函数,这是它的一个函数圆形。 可以看到这个函数里面呢有两个参数,一个呢是 px list, 还有一个呢是 px new list item。 这两个参数呢,跟我们前面介绍的列表像插入函数的参数的功能呢是一致的啊,第一个是指定要列表像要插入的列表,第二呢是指定要插入的列表像,那么函数是没有返回值的,那我们来看一下这个列表像插末尾插入函数的一个时间过程 啊,我们把这个函数的一个时间过程呢啊分了这么几个板块来介绍。首先看一下第一个前面这两行, 这两行呢是用来对列表和列表像完整性的一个检查,和我们列表像的一个插入函数的介绍是一样的,那么从这个这一段,这一行到下面这几行,这个呢是用来啊将我们要插入的列表像啊,插入到我们的列表末尾, 那我们在前面介绍列表像插入的函数的时候啊,我们使用的是 list we list inside 这个函数, 那么要列表像列表中呢,插入一个列表像的时候呢,这个列表像的位置呢,是通过列表像的值啊,也就是列表像成员当中的 xitem value 通过这个值来决确定,那么我们的这个 list inside n 的这个函数,这个是往我们的列表的末尾来添加列表像,我们知道列表中的列 x 这个成员的变量表示的是列表像的一个末尾,那么函数这个函数要插入一个列表像,是不是就是插入到这个 listen 的前面或者后面呢?这个是不一定的,这里所谓的末尾要根据列表的成员变量 pxidx 根据这个变量来确定。前面我们说了列表中的这个 ps index 成员的变量呢,是用来便利列表的,那么 index 所指向的这个列表像就是要便利的开 是列表像,也就是说 index 所指向的这个列表像就是代表了这个列表的头。那么由于这是一个环形的列表,所以啊,新的列表像就应该插入到这个 index 啊所指向的列北向的前面,所以因此呢,我们这一段代码就是这样的,首先获得我们的 indest 啊, indest, 我们要插入的下一个的 indest, 然后呢通过这个 indest 的上一个呢, 由我们新项目的啊啊上一个来指定啊来指定,这样呢,我们就可以, 然后我们啊我们的 index 的所以只向上一个下一个,那么就是我们新的要插入的项目,那我们新的项目呢,同样是用我们 我们的 index 的音啊这个上一个的一个,所以呢指向我们这个,这就实现了我们心向新的一个列表像插入到我们 index 的上一个啊所指向的列表的一个上一个, 所以呢,这这个那么就是这个意思,所以因此呢,这个 index 的啊非常重要,我们可以画一个草图,假设这是我们的一个列表,那我们列表里面有几个列表像, 这是 list and, 我们不不一定说直接就插入到 list end 的前面,因为我们知道 list end 表示我们列表当中的最后一个列表像,那么但是呢,你要插入到最末尾,不是说就是在这个末尾啊,它是要根据你的这个插入的列表像的这个 px index 所指向的他的这个项目的一个末尾插入。假设我们这 index 的指向这个这个列表像,那么这个列表像,那他所要插入的这个末尾就是在这个位置,要插入在这个和这个中间要插入一个列表像, 所以呢我们的 index 的一个指向的这个前面的,我们要给这个新项目的这个新项目的这个,嗯,指向他啊,指向他, 然后新项目的前面一个要指向这个他的前面一个,也就是这个,也就这个位置,所以呢就把我们的这个新新的啊列表像插入到了这个和这个之间啊,这就是我们的一个列表像的一个末尾插入的一个函数时间过程。 然后呢下面这个三,那个三呢,就是用来标记我们这个,呃,新插入的这个列表像,它是属于 lex 啊这个列表的啊,属于这个列表的,然后呢我们还要更新一下我们列表像的一个数值啊,加一表示我们增加了一个列表像, 这是我们列表像末尾函数的一个插入的一个实现过程。那么如果说这段大码看不明白,那可以结合我们这个示意图来去理解啊,跟我们的一个列表像的插入是一样的啊,我们可以通过这个, 比如说我们初始列表,我们的初始列表假设已经有两个列表像,一个是我们的啊, listatitme 一和 listattami 二,根据他的列表像的值进行声序排序。 那现在我要插入一个 lisa item 啊,对于我们这个 lisa item 一啊, 现在我们要插入一个呃五十的一个列表像,他的一个列表像值为五十的一个列表像,那我们应该怎么插入呢?首先我们看一下 p index 的 index, 它指向的是哪一个啊? 指向的是我们的,可以从这个图当中可以看到拼音 des 的,他指向的是 list idmi, 而不是这个 不是这个 listen i listen end 的这个列表箱,所以呢,不是往 list and 的前面插,而是往这个 list and item 一的前面来进行插入,因此啊,我们的插入过程呢,就是这样的,首先我们可以看到这是插入 完之后的一个示意图,那么就是将这个哎 listatitum 一,它的上一个列表像呢,指定我们的要插入的 listamen 三, 然后呢, list item 三的下一个指定我们的这个 list item 一啊,也就是我们这个当时 p index 的所指向的这个位置 啊,然后呢,我们的要插入的这个 list m 三的上一个列表像,指定我们的这个末尾啊,因为这个 list item 一要在 list item 一和 list n 的之间插入一个 list item 三,所以呢,它的这个关系就是这样的, 然后 list end 的下一个就是指向我们的 list end 啊,所插入这个节点,所以通过这个可以很清楚的理解我们这一段代码, 这是这个列表下末尾的一个插入函数的一个实现过程的一个示意图啊,一个示意图。