手机浏览器扫描二维码访问
「理论上应该没有问题的呀,要实现交换两个变量的值容易得很!可是老爹的笑容让我心里一阵发毛……这其中绝对有猫腻!」
面对老爹提出的疑问,原本信心满满地我瞬间失去了所有的底气。一旁的小弦子虽然没有吭声,眉头却是皱得跟个小老头儿似的。
有道是实践是检验检验真理的唯一准则,是骡子是马,拉出来溜溜不就知道结果了么?
于是乎我三下五除二就写好了swap函数,为了谨慎起见,我还在函数中打印了交换前后的值。
以我如今的水品写这种简单的代码出错的几率还是很小的,编译运行一气呵成,小黑屏上打印出来的结果的的确确显示两个变量的值已经成功交换了。
「这是几个意思?难道老爹是在故布疑阵,唱空城计?」
小弦子看到我咬手指甲,面露沉思,于是也把脑袋凑过来看了一眼显示屏,随即开始捏着下巴冥思苦想。
「老爹,打印的结果明明显示交换成功了呀!」
为了稳妥起见,我还进行了单步调试,可是一切都按照预期的流程执行,结果也是预期的结果。最终我还是没有发现问题到底出在哪里,于是只能向老爹求助。
「我可没有让你打印形式参数x,y的值,我说的是交换实际参数a和b的值,也就是这样:
inta=3;
intb=4;
swap(a,b);
printf(“a=%d
“,a);
printf(“b=%d
“,b);」
「桥豆麻袋,形式参数……实际参数又是从哪儿冒出来的新名词啊?」
「哦,这点是我的疏忽,在给你们讲函数这一部分知识的时候忘了说。函数参数列表中的变量叫做形式参数,比如说:
swap(intx,inty)
这里的x和y就就做形式参数。
而我们在调用函数时,为函数传递的参数,这个就叫实际参数,例如:
swap(a,b)
a和b就是实际参数。
而我刚刚提出的要求是要交换两个是实际参数的变量,所以我们应该监控a和b在调用函数的前后的变化。」
明白了老爹的意图后,我对代码进行了更改,然后重新编译、运行。
「what!」
看到小黑屏上打印的结果后,我没有忍住喊了出来。因为屏幕上打印的结果显示,a和b在调用swap函数前后居然没有任何变化!我简直不敢相信自己的眼睛,这就好比你用计算器计算11的值,它妹的居然给你显示11=3!
为了委托期间,我重启了电脑又执行了几次,但是结果都是一样的!换句话说,swap函数交换a和b的值失败了,但是函数分明已经是执行了的!
「老爹,这是怎么回事儿啊?」
我实在是想不通这其中的症结所在,只能够向老爹提问。
「这就要从函数参数的传递问题开始说起了。
在c语言中,我们在调用函数的时候,参数的传递实际上是采用的值的传递方式,什么意思呢?
上门龙婿陆凡 王妃称心 衫生诡 龙婿陆凡 梦灾末世生存指南 张钟颖 嗣子荣华路 韩娱之聚光 戚风童话 迟宠 青梅千千结 校园全能马甲女神 阴阳眼小师妹 四龙攒凤 夫人的病今天好了吗 我的蛮荒部落 最强豪婿陆凡 异界烽火录贰烽云再起 大佬甜妻宠上天 顾九辞霍明澈
...
秦晚夏以为她的闪婚老公,除了帅,一无所有!可谁能料到,他竟然是显赫国内外的大名医,上市集团的幕后大老板,还把她宠上了天!恢复记忆之后才知道,她是他藏得最深的珍爱!...
这是一本书名老派,但绝不老套的故事!当红女明星穿越遇见顶流俊和尚,高冷太子殿下也来横插一杠本以为自己凭借角色技能,能混个风生水起,却没料到这里世道如此险恶,套路如此之深!喂,那救了我好几次的和尚小哥哥,你得带着我升级打王者啊!还有那高冷BT爱唱戏的太子殿下,说了我不喜欢你,就是不会喜欢上你!!!...
夜场服务小妹居然是村里的嫂子,原来她是这样的人…...
...