⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_29334.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:29334 发表者:~榴莲飘飘~ 发表日期:2003-02-04 20:02:57
<br>主题:一点儿小问题~~
<br>内容:使用指针的传引用 和使用引用参数的传引用都有哪些区别,举一些例子啊.<BR><BR>thanx!!!
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:凌仕晓 回复日期:2003-02-04 20:47:11
<br>内容:使用指针传递,除了可以返回一个值外,还可以直接修改指针指向的对象的值,而用非指针(或地址)作参数,并不能修改作为参数的变量的值,只能用一个返回值来实现功能.<BR>如下面的tc代码: <BR>#include"stdio.h" <BR>main()<BR>{ <BR>&nbsp;&nbsp;int func1(int x);<BR>&nbsp;&nbsp;int func2(int *x);<BR>&nbsp;&nbsp;int a=1,*pa,b,c;<BR>&nbsp;&nbsp;pa=&amp;a;<BR>&nbsp;&nbsp;b=func1(a);<BR>&nbsp;&nbsp;printf("a=%d,b=%d",a,b);&nbsp;&nbsp;/*a=1,b=2 返回了两倍值,但a的值并没变;*/<BR>&nbsp;&nbsp;c=func2(pa);<BR>&nbsp;&nbsp;printf("a=%d,c=%d",a,c);&nbsp;&nbsp;/*a=2,c=2 不但返回了两倍值,a的值也改变了*/<BR>&nbsp;&nbsp;<BR>}<BR>&nbsp;&nbsp;int func1(int x)<BR>{<BR>&nbsp;&nbsp;x=x*2;<BR>&nbsp;&nbsp;return x;<BR>}<BR> int func2(int *x)<BR>{<BR>&nbsp;&nbsp;*x=*x*2;<BR>&nbsp;&nbsp;return *x;<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-02-04 22:19:51
<br>内容:谢谢<BR>不过这个我知道,可是引用参数的传引用你还没有说呢.<BR>引用参数的传引用也具有指针传递的特性,但是好像有一些别的特点.<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>
<font color=red>答案被接受</font><br>回复者:酷酷马 回复日期:2003-02-05 15:37:18
<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-02-05 18:52:18
<br>内容:也就是说引用被初始化指向一个对象后不能改变,那引用就跟这个对象一样了?<BR>比如:<BR>&nbsp;&nbsp;&nbsp;&nbsp; int &amp;a=c;<BR>是不是a就等于c了,两者完全等同?<BR><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-02-05 19:37:51
<br>内容:是的,引用的所有操作实际上都是应用在它所指的对象上的。<BR>int &amp;a=c;<BR>a和c并不完全相同,a和c是两个变量,只是变量a含有c的地址,对a的操作实际应用在c上。<BR><BR> <BR><BR><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-02-05 21:30:28
<br>内容:变量a含有c的地址?<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-02-05 22:42:41
<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-02-06 21:04:55
<br>内容:哦,知道了。谢谢。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -