woaini92887 发表于 2014-12-6 14:00:53

动态函数

realloc改变数组大小后会自动释放以前的内存吗还是只是在原来基础上增加或者减少一个长度

GHOST-DN 发表于 2014-12-6 18:52:30

不会释放内存,你以前存在里面的数据仍然存在,只是重新改变内存大小而已。如果你不满足文字解释,那你可以做个实验。先malloc一下,存几个数据进去。再realloc ,然后输出数据,看看是乱码还是咋滴,多试几次就什么都知道了,这个没啥可纠结的

woaini92887 发表于 2014-12-7 12:00:15

GHOST-DN 发表于 2014-12-6 18:52
不会释放内存,你以前存在里面的数据仍然存在,只是重新改变内存大小而已。如果你不满足文字解释,那你可以 ...

试了下地址不变 就是内存变大了

编程难 发表于 2014-12-14 17:19:35

woaini92887 发表于 2014-12-7 12:00
试了下地址不变 就是内存变大了

地址很可能会变,但也要看情况,可以看成又调用了一次malloc,只不过多做了一些事,这样就清楚了
页: [1]
查看完整版本: 动态函数