温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
这节课讲用函数时间两处的交换。首先在main函数里面实现。A等于一。B冒号等于二。两处的交换用一条语句就可以实现。嘿。B等于BA,这就算实现了。实际上不,不用通过中间变量就能实现量数的转换,我们打印一下。Ae等于2%D。B等于。等于百分加。
01:03
A。嗯,运行一下。我们可以看到,A等于二,B等于一。这实现了两处的交换。现在现在需求是写一个函数,时间两次交换。The VC。二筒。这个函数的功能是两重的交换。A1A。特。然后我们把这段代码复制过来。这这函数就实现了两数的交换。
02:02
如何调用呢?我们把这这段代码就先注释掉。这就算实现了两处的交换。我们运行一下。我们可以看到这两这两个数并没有实现交换的效果,这是为什么呢?这个是要从内存分配说起。这一个程序里面,它分为。你在这这里写吗?内存上来说的话,有代码区。以出事化去。
03:04
我初始化去。对战。代码区,正式存代码的已初始化区和未初始化区是存全局变量的。对,是存对象嘛,开战是存。函数的入程,呃,局部变量。而main main函数和S函数都有。都都有自己的战争,战争的本质就是就是一块内存。
04:02
Main函数里面的A和B和里面的A和B。他们所在的内存空间是不一样的。所以里面的A和B交换了。而每函数里面。A和B并没有交换。那如何实现交换呢?答案,使用指针。我们把这个代码先复制下来。破二。新任的。这个时候一定是修改内容。所以要加星号的。
05:01
里面是取地址。我们再运行一下。我们可以看到实现了两处的交换呢。指针虽然也是复制了,但是他们纸箱内容。是主函数里面N和B的地址。你修改内容就相当于修改主函数里面,然后B的内容。自然会影响到主函数里面的A和B。
我来说两句