搜索
编程论坛
→
开发语言
→
『 数据结构与算法 』
→ 烦劳各位朋友帮帮忙!
标题:
烦劳各位朋友帮帮忙!
只看楼主
倩玮瑞
等 级:
论坛游民
帖 子:40
专家分:12
注 册:2009-3-7
结帖率:
91.67%
楼主
已结贴
√
问题点数:10 回复次数:3
烦劳各位朋友帮帮忙!
Status ClearString(HString &S){
//将S清为空串
if(S.ch){free(S.ch); S.ch=Null;}
S.Length=0;
return OK;
}
我就是想问一下,S.ch所指空间已经被释放了,那Null到底赋值到哪了?就是Null在存储单元里的什么位置?
就没具体空间存放它了啊!
还有麻烦给我解释一下free函数具体什么作用呢?释放空间后,就什么也没了吗,首地址也没了?
搜索更多相关主题的帖子:
朋友
烦劳
2009-11-19 21:31
missiyou
等 级:
贵宾
威 望:
16
帖 子:531
专家分:218
注 册:2007-10-9
第
2
楼
得分:10
算了,简单点吧,S的空间不在函数内,在外面。
free所释放的是S.ch所指向的空间。 ch是指针类型,在编译器中,类型有它自己的空间。所以并没有被释放
。 在看所传递过的是引用。因为这个不在函数内。凡函数内定义的,只在函数内有用,。因为原理是栈。
2009-11-22 10:02
倩玮瑞
等 级:
论坛游民
帖 子:40
专家分:12
注 册:2009-3-7
第
3
楼
得分:0
先谢谢您帮我解答问题。不过我还想问清楚一下,您的意思是NULL存放到了指针变量的空间里,是吧?这样指针值成了空,就没有具体指向空间了。还有就是这句话“在看所传递过的是引用。因为这个不是函数内。凡函数内定义的,只在函数内用,因为原理是栈。”是什么意思呢?麻烦您在帮我解释一下。谢谢啦!
2009-11-30 22:22
倩玮瑞
等 级:
论坛游民
帖 子:40
专家分:12
注 册:2009-3-7
第
4
楼
得分:0
麻烦版主有空尽快帮我解答一下难题。谢啦!
2009-12-01 21:43
4
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-292910-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.290322 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved