[問題] 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