Re: [問題] 一個簡單的const問題

看板C_and_CPP (C/C++)作者 ( )時間15年前 (2011/07/06 20:07), 編輯推噓3(3012)
留言15則, 6人參與, 最新討論串4/4 (看更多)
不好意思我借標題再問另一個問題 我在寫一個函式時會傳入一個指標 而我希望該指標指到的內容不可更改 但是問題來了, 我前面是這樣定義的 typedef int *my_ptr; void test(my_ptr pint) { } 那該怎麼做才能讓 pint 指到的位址不可更改 ? 麻煩各位大大賜教 <(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.115.144.178

07/06 20:20, , 1F
基本上無解。唯一的作法就是不要自己手賤去改它。
07/06 20:20, 1F

07/06 20:21, , 2F
C/C++ 的轉型一定可以繞過 const 的限制沒有問題。
07/06 20:21, 2F

07/06 20:22, , 3F
如果你說「讓某些簡單寫法編譯錯誤」可能還有救...
07/06 20:22, 3F

07/06 20:32, , 4F
可以吧my_ptr const pint
07/06 20:32, 4F

07/06 20:34, , 5F
我測試 my_ptr const pint 跟 const my_ptr pint 一樣
07/06 20:34, 5F

07/06 20:35, , 6F
都是 const int *my_ptr 而非 int * const my_ptr
07/06 20:35, 6F

07/06 20:36, , 7F
唔,我上面好像寫反了
07/06 20:36, 7F

07/06 20:44, , 8F
07/06 20:44, 8F

07/06 20:49, , 9F
我真的寫反了 XD 老是弄混
07/06 20:49, 9F

07/06 20:52, , 10F
嗯,謝謝大家!
07/06 20:52, 10F

07/06 21:22, , 11F
已解決,另外定義一個const的型別...
07/06 21:22, 11F

07/06 21:23, , 12F
typedef const int *cmy_ptr; Orz
07/06 21:23, 12F

07/08 01:23, , 13F
幹嘛不直接寫,這樣一個型別被你訂兩次...
07/08 01:23, 13F

07/08 10:21, , 14F
因為在 C 下宣告 struct 都要寫 struct 有點懶...
07/08 10:21, 14F

07/08 10:21, , 15F
此外 我需要確定一些變數的大小
07/08 10:21, 15F
文章代碼(AID): #1E550BmH (C_and_CPP)
文章代碼(AID): #1E550BmH (C_and_CPP)