[問題] 關於函數指標的參數型別轉型

作者: a27417332 (等號卡比)   2017-06-25 22:33:32
不好意思,想請教版上的大大:
在C99以後,以這個問題來說:
https://goo.gl/aeLCxN
為甚麼void*是不相容於struct my_struct*?
在C中,void*不是可以和非函數指標互轉,並保證在轉回去以原型別解引用時會正確?
但這邊好像並不是這個意思?
自己在網路上找了一些關鍵字,但還是不能理解這個結論的原因。
還希望有大大能指點一下m(_ _)m
另外,在C++中,void*轉到T*(不為函數指標)是需要顯式轉換的,
而T*(不為函數指標)轉到void*是可以被隱式轉換的。
想問下這個規則是標準的哪裡?還是我有誤解的地方?
不好意思了,謝謝!
作者: littleshan (我要加入劍道社!)   2017-06-25 23:13:00
compatible type有嚴格的定義,基本上就是相同的type「可以互轉」並不表示它們是compatible type

Links booklink

Contact Us: admin [ a t ] ucptt.com