📄 subject_64649.htm
字号:
<p>
序号:64649 发表者:浪际天涯 发表日期:2003-12-12 00:43:33
<br>主题:问一个很菜的问题
<br>内容:一个指针,定义时并没有给它分配空间,将它作一个函数的参数传进去,在函数中将另一个指针地址赋予它,怎么传出来呢?<BR>例:<BR>这个例子中buf是传不出来的,如何传出来呢?<BR>void main()<BR>{<BR> char *buf;<BR> func(buf);<BR>}<BR>void func(char *buff)<BR>{<BR> buff=new char[100];<BR>}
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:姚 回复日期:2003-12-12 08:54:13
<br>内容:原来我也遇到这个问题。不过我这样做便解决了!<BR><BR>void main()<BR>{<BR> char* buf;<BR> func(buf);<BR>}<BR>void func(char*& buff) // 注意参数的传递方式,是传指针的引用。<BR>{<BR> buff = new char[100];<BR>}
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:夏雪宜 回复日期:2003-12-12 09:38:22
<br>内容:为什么不使用char* func(char *buff),这样也可以返回啊,<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:徐相华 回复日期:2003-12-12 09:52:27
<br>内容:用上面的两种方式都能实现需求,但第一种据说效率更高,是潭大师说的,不过,有点悬!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:浪际天涯 回复日期:2003-12-15 10:28:55
<br>内容:谢谢各位,我要传递的是四个指针,所以2楼的方法不能用,接受一楼回复
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sunice 回复日期:2003-12-15 12:07:19
<br>内容:你的子函数调用时,根据值传递的思想,传递的buf参数根本没有用处,子函数内部没有用到这个值,当然更不能改变他的值了。如果传入一个地址,那么他的值就可以改变了。<BR>要知道,buf是一个指针,但同时他也是一个变量。<BR>void main()<BR>{<BR> char* buf;<BR> func(&buf);<BR>}<BR>void func(char** bufff) // 传入buf的地址<BR>{<BR> *(bufff) = new char[100]; // buf的值指向一块地址<BR>} <BR>2003-12-15 12:12:17
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -