[问题] C里面call by value 的保存有什么好处

楼主: watermeter (水表)   2016-01-01 10:54:57
最近写C pointer
想到既然pointer可以让程式跑更快
那当初为什么不废除原来的call by value
直接用pointer 的方式代替原来的运算就好了
保留call by value 的目的是什么
作者: LPH66 (-6.2598534e+18f)   2016-01-01 11:23:00
你知道传指标也是 call by value 吗?
作者: Hikkiaholic (= =a)   2016-01-01 12:48:00
有时就是要copy两份才不伤身体阿 像你这篇就copy两份
作者: tsoahans (ㄎㄎ)   2016-01-01 13:27:00
call by address只能对变量吧? 数值又不能取位址
作者: chuegou (chuegou)   2016-01-01 13:52:00
2F幽默www 这篇要指向上一篇www
作者: tjjh89017 (伊达政宗)   2016-01-01 14:21:00
C语言只有 call by value
作者: TobyH4cker (Toby (我要当好人))   2016-01-01 14:49:00
这样就能当作是local variable还有当你传多个int *却只有读没有写的需求时比int还慢因为会再多一倍存取内存的时间,脱裤子放屁(此处以当int *不是指向array of int时)
作者: jaid (jaid)   2016-01-01 22:12:00
操作pointer是间接的
作者: afafaf (bb)   2016-01-02 17:20:00
Pointer 就是一个4(8) bytes的value
作者: Killercat (杀人猫™)   2016-01-02 22:38:00
C从头到尾都只有一种东西叫做Call by Value只是你可以选择传入的是指标还是数值而已所以根本没有什么“保留call by value的目的”这回事
作者: stupid0319 (征女友)   2016-01-02 23:12:00
事实上要知道call stack ret等还有暂存器等程式运作才会理解为什么会有pointer
作者: edward13 (-_-)   2016-01-04 14:24:00
吓我一跳哪时ptt可以按上下键来切换推文..

Links booklink

Contact Us: admin [ a t ] ucptt.com