完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
故事是这样的:
#include void change1 (int *a,int *b) { int c; c=*a; *a=*b; *b=c; } void change2 (int &m,int &n) { int c; c=m; m=n; n=c; } int main() { int a=1;int m=1; int b=2;int n=2; change1(&a,&b); printf("-a-%d--\n",a); printf("-b-%d--\n\n\n",b); change2(&m,&n); //错误,错误,错误 printf("-m-%d--\n",m); printf("-n-%d--\n\n\n",n); return 0; } |
|
相关推荐
1个回答
|
|
bsp; n=c; }
int &是C++引用(reference)的一种,与指针(pointer)类似,也可以通过操作变量的地址来改变变量的值,但与指针不同的是,引用不需要像指针那样显式地取地址、解引用,在语法上更加简洁,也更加安全。 在这个例子中,change1使用了指针,change2使用了引用,两种方式最终实现的效果是一样的:交换两个变量的值。但使用引用可以使代码更简洁易懂,避免了指针中可能出现的空指针异常等问题。 |
|
|
|
只有小组成员才能发言,加入小组>>
854 浏览 0 评论
1181 浏览 1 评论
2558 浏览 5 评论
2890 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2749 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1168浏览 3评论
213浏览 2评论
481浏览 2评论
394浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
477浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-11 22:11 , Processed in 1.212530 second(s), Total 79, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号