作者zzss2003 (brotherD)
看板C_and_CPP
標題[問題] function pointer可以這樣用嗎?
時間Tue Aug 14 11:58:31 2018
程式碼:
https://ideone.com/pwCqzF
問題: 為什麼function pointer可以透過define找到function的address?
拿第一個183的James當作例子好了。當程式碼在執行的時候,preprocessor會先把
BASKETBALL換掉,取代成PLAY_BASKETBALL。
但PLAY_BASKETBALL並不等於function PLAY_BASKETBALL,為什麼程式會自動跳到函式裡面
?
請問是跟dlsym這個函式功能有關嗎?
還是C語言只要define中的識別字跟function name一樣,就會把它取代成function name?
/*已由printf測試過,的確會跑到該程式裡面*/
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.250.129.225
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1534219115.A.6E6.html
推 chuegou: 如果沒有指到play_basketball那會指到哪裡阿? 08/14 12:14
推 boss0405: 你的DETAIL_T最後一個就是f_ptr了阿 08/14 12:17
→ sarafciel: PLAY_BASKETBALL不等於function PLAY_BASKETBALL的話 08/14 12:32
→ sarafciel: 你覺得他應該要等於什麼? 08/14 12:32
→ zzss2003: 了解了,謝謝各位大大 08/14 16:44