看板 C_and_CPP 關於我們 聯絡資訊
不好意思我借標題再問另一個問題 我在寫一個函式時會傳入一個指標 而我希望該指標指到的內容不可更改 但是問題來了, 我前面是這樣定義的 typedef int *my_ptr; void test(my_ptr pint) { } 那該怎麼做才能讓 pint 指到的位址不可更改 ? 麻煩各位大大賜教 <(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.115.144.178
Favonia:基本上無解。唯一的作法就是不要自己手賤去改它。 07/06 20:20
Favonia:C/C++ 的轉型一定可以繞過 const 的限制沒有問題。 07/06 20:21
Favonia:如果你說「讓某些簡單寫法編譯錯誤」可能還有救... 07/06 20:22
singlovesong:可以吧my_ptr const pint 07/06 20:32
james732:我測試 my_ptr const pint 跟 const my_ptr pint 一樣 07/06 20:34
james732:都是 const int *my_ptr 而非 int * const my_ptr 07/06 20:35
james732:唔,我上面好像寫反了 07/06 20:36
JingXD:http://0rz.tw/0Kefy 07/06 20:44
james732:我真的寫反了 XD 老是弄混 07/06 20:49
suhorng:嗯,謝謝大家! 07/06 20:52
suhorng:已解決,另外定義一個const的型別... 07/06 21:22
suhorng:typedef const int *cmy_ptr; Orz 07/06 21:23
WJAider:幹嘛不直接寫,這樣一個型別被你訂兩次... 07/08 01:23
suhorng:因為在 C 下宣告 struct 都要寫 struct 有點懶... 07/08 10:21
suhorng:此外 我需要確定一些變數的大小 07/08 10:21