[問題] function pointer可以這樣用嗎?

看板C_and_CPP作者 (brotherD)時間5年前 (2018/08/14 11:58), 編輯推噓2(203)
留言5則, 4人參與, 5年前最新討論串1/1
程式碼: 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

08/14 12:14, 5年前 , 1F
如果沒有指到play_basketball那會指到哪裡阿?
08/14 12:14, 1F

08/14 12:17, 5年前 , 2F
你的DETAIL_T最後一個就是f_ptr了阿
08/14 12:17, 2F

08/14 12:32, 5年前 , 3F
PLAY_BASKETBALL不等於function PLAY_BASKETBALL的話
08/14 12:32, 3F

08/14 12:32, 5年前 , 4F
你覺得他應該要等於什麼?
08/14 12:32, 4F

08/14 16:44, 5年前 , 5F
了解了,謝謝各位大大
08/14 16:44, 5F
文章代碼(AID): #1RSbDhRc (C_and_CPP)