00:00
做一个int类型操作,然后这里面做一个什么,做一个字符串相关操作文件,新建一个什么,新建一个,呃,14叫。堆空间,然后是操。做字符串。点C。好,我们再来例子,这俩例子之后再给大家去,让大家让大家去理解一下啊,那首先那这里面我们开辟一个什么,开辟一个呃。字符串的一个空间大小应该怎么看啊是。差。氢P等于malo,然后开辟空间大小多大呢?是?Size off是差再乘以一个,呃,不是不是乘以在外头啊,乘以一个十个大小,这是多大空间啊,十个字体大小啊,那然后我这里面PTF打印一下。摆方S斜杠啊,不用斜杠啊,是逗号一个P。
01:03
然后这里面注意下最后一步是哪步瑞啊瑞之后福瑞这块你得需要注意一下先怎么着,先判断这个是否为空,然后再瑞,然后再让他等于空是不是啊,是这样这个流操作流程啊,你知道这个操作流程就行,当当然这块是不是还得选成差星啊。是那样开辟这对空间,那打出来这个值为什么值啊,可能会断。啊,同学说可能会荡掉啊,那但是正常情况下打印的时候应该是诶。这不是这错误,是这个错误。13。调试开始执行。我开辟完这个对空间是一个什么样的东西啊。序串乱码是不是啊啊,这个是叫开标对空间,对空间不不会自动给你进行一个初始化操作是不是,那我想初始化操作行吧,其实这个我们这个程序里面有一个方式啊,就是呃,咱们上面这个内容叫什么叫。可以初始化啊,咱们一会再说这个问题内容啊,咱们先比如说开篇对空间,那我操作对空间,那看一下我要往这里面拷贝内容,看一下拷贝什么样的内容是。
02:08
啊。拷贝还会去吗?嗯,拷贝这拷贝内容,然后这批什么。是不是这个内这块开辟内存呢,我要拷贝内容,拷贝什么?拷贝是哈俄勒WRLD。是多少个11个啊,我先拷贝,然后再去打印啊,先拷贝再打印。拷贝完这是怎么,这三句程序我是不是大家都能懂啊,开这个空间拷贝,拷贝谁啊,拷贝是hello world到谁里面啊到这个是。P里面来是不是,然后去打一下这个P,然后再去释放掉这个P,嗯,看一下会不会报错啊,调试开始执行。报错了吧啊。为为,为啥这个报错了呢?我这里面十个字节,这里面打印多少个11个,我是不是得算怎么着,预数组下边越界了吧,啊那比如说什么,比如说这里面我打印个哈喽,这样行不行。
03:09
调试开始执行。是没问题啊啊,所以说你在注意操作的时候,这里面是它的值默认情况是没有值的是不是啊,它可能是在这个就是你开闭对空间不是十不是十个这个差类型大小嘛,是不是它可能第一个存就是什么,就是七杠零是不是可能嘛,因为你开P空间怎么没被使用,是不是在打印这个值的时候,默认情况下可能是什么也不打印,是不是可能打印很长一六是不是也可能程序怎么样打印就挂掉了,为啥?因为这个呃没有读到斜杠零,但读到一个什么呀,不能去读取的这个空间是不是它可能挂掉了啊,这是它的问题出现啊,同样那我们通过什么,通过这个是string性copy操作这个对空间的行为下。那也会出现问题,什么问题啊。因为string空string copy操作这个空间大小,它不是什么,它不是给你一个具体具体的固定的值,是不是它是拷贝什么呀。
04:01
后面内容到什么里面,到这个前面里面来是不是啊,那如果这个后面字符串比较长,就像我刚才写的是word。然后放在对空间中,是不是这个对空间怎么的,就是已经越界了吧,它怎么的,就是比如说hello,这里面假如说站,假如说是站在哪,是站在这儿是不是,然后后面加上word,总共加在这,这已经超出了什么呀,我们这个范围是不是报错了啊,所以说堆空间这里面还要注意一个问题,就是什么就是。开辟。开辟多大?堆空间。啊,就要操作多大。堆空间你这里面开辟小的时候是这个怎么的,就是就是你可能不够用,是不是开辟大了呢?你可能是不是就浪费啊啊所以说这个问题全靠谁衡量啊,全靠自己衡量,程序员啊的经验来去衡量这个问题知道吧,这是我们对字符串操作啊,他不是这个堆空间出现问题,而是这个拷贝的时候出现问题,这个明白啊,而且拷贝情况还是不是得需要这个啊。
05:03
这个是什么,是这个是警告啊警告,这是我们这是对字符操作的一个是处理方式,那同样再给大家来一个。呃,这个这个咱们这块问题先放这啊是。14011401。再来一个int类型的,什么类型的?呃,Man跨括起来。同样在开辟空间int类型,呃,不是特类型,是差星。P等于malo啊,这把开辟开辟空间大一点啊是。Of。操。乘以一个。100哦,现在开辟空间大小多大一百个啊,注意一下开辟完要怎么的。啊,释放掉这俩代码一定要一起一起写啊,开辟的时候会释放的,要一起写。
06:02
开辟完这个空间,然后我给他操作是。HRCMP。然后让他。啊,不是不是sorry啊是C啊,然后是P,然后是逗号。哈娥乐乐窝WD。然后这里面再打印一下会显示什么样的值,先告诉我一下啊。百方B斜杠N,然后呃,百方P,斜百号S,斜杠个N,然后是逗号一个P,告诉我会打印什么样的值。Hello word是不是因为这个到到什么到型杠零是不是就停止了啊,这是怎么着,看一下拷贝完的内容在不在这个里面来,就是我将什么将这个hello,这是个什么字符串,是不是它在哪区啊。是不是在字符串常量区啊啊,记不记得咱们之前写过一个问题,咱们先把这问题说一下,然后这个问题也是需要大家注意的,比如说是in特呃,是差星呃。
07:02
PE让它等于一个哈窝W。然后再写一个是差P p2等于诶,这个是圆角半角了吧,P2等于一个。哈娥咯咯窝,World。这俩是不是一样的名啊?还记得这俩值吗?当初咱们写的。百分号P,然后是斜杠N,逗号一个P1,注意下这不是N的P1啊,是P1,然后这是什么,这是。P2,看下这俩值是不是一样的,是不是啊,就是这俩存的值是不是一样的啊,主要是开始执行。是不是都是存在一个地址啊,这是什么中地址啊,是常量中心地址吧?啊,那我们拷贝完之后看一下我这里面拷贝到P里面将什么将hello word拷贝到P里面去,那这个P和P1P2的这个内存地址一样吗?来看一下这。
08:00
PTF,然后是。百分号。P。斜杠N逗号一个P,我们先把打印这句话是怎么呢?先去掉,是不是我们这里面不需要打印,不需要打印这个是hollwood一个值,我只要只想让大家看一下什么是这个是这个P1和P1P2对应的都是hello word,是不是这仨都是hello word啊,那看下这个P1和这个P12对应内存地址一一不一样,看一下。不一样是是有同学说一样,有同学不一样,为啥不一样,我这个堆空间它和什么,和另外一个是一样的,看一下和哪个是一样的,比如说我定一个差。AR什么型号AR,然后括起来是。100让它等于一个什么,等于一个hello w RD hello,沃,那这个地址和这个地址一样吗?在孙中存的位置啊。域这是在哪区存着的,占区存着呢?这个是呢,堆区域存这俩呢,常量取是或叫这个数据区存是不是都都一样啊,他们内容都是一个内容嘛,都是hello word是不是啊,他们存储的位置不一样,那这个哪个能修改啊,我堆空间这个能修改吗?能是不是,那我们修改一下啊,怎么修改呢?改一个字符啊,拷贝完之后是星。
09:20
P等于一个。A,这样可不可以修改啊,可以,那我修改这个AR里面值是不是也可以啊,比如说这是AR中的这个是一等于一个。A,是不是也行啊啊,那这俩是不是不能修改啊啊,咱们讲了看一下这个修改完之后再打印这个值啊,把这个放到最后打印一下。走势开始执行。这个是前面这俩地址是不是,这个是什么?这个是P对应的地址是不是,这是打印P的这个值,那P是怎么的?P是它自己创建了一块内存空间是不是,然后将hello word这个里面内容怎么的放在这里面来,是不是就说拷贝了一份和那原来那份是相同的吗?
10:08
不需,呃,那个内容是一样的,但是我这个内容是不是能修改啊,之前内容不能修改啊,那这个就是后面也涉及到我们后面讲的一个内容就是什么,就是这个是深拷贝与浅拷贝的一个问题,知道吧,那咱们先把这个字符串这块的操作,对空间操作先放在这。
我来说两句