看板 NTUEE113HW 關於我們 聯絡資訊
然後來講個 function pointer 之前的 pointer 都只是拿來指個普通的變數 有點ρρ的感覺 現在, pointer 即將進化為潮男了! 因為它可以指向 function ! 好啦 不嘴砲= = 還記得 pointer 的宣告方式長的像這樣子吧 datatype* ptr; 類似地,function pointer 的宣告方式 是像這樣子 datatype (*funcPtr)(int,double); 這樣就宣告了一個 function pointer 那…這樣宣告代表了什麼呢? 意思就是宣告一個 function pointer 叫作 funcPtr 然後這個 funcPtr 指向的是一個 function 的 address 而且這個 function 的 prototype 是以下這個樣子 datatype func1(int,double); 有沒有發現宣告的方式和 prototype 幾乎一樣 XD 好…那我們要怎麼 assign 一個 address 給 function pointer 呢? 其實就和一般的 pointer 沒什麼不同 例如以上面的 code 片段 就可以寫成這樣 datatype (*funcPtr)(int,double); funcPtr = func1; funcPtr = &func1; //PS: 以上兩行是一樣的,只是第一種是比較快的寫法 //某個網站的說明是說第一種是 short form //然後第二種是 correct assignment using address operator 阿我先去吃飯了= = 其它的等會兒 PO~ 大家掰掰 -- ╭═══╤═══╮ ╰═╮ ╭═╯ │ │ │╭═和平,土地,麵包═╮ │ │ │ ╭═╧╧╮╤═╤═╮═╤═╤╧╮ │ │ │ │ ││ │ │ │ │ │ ╰═╤═╯ │ │ ││ │ │ │ │ │ │ ╰╧╯╰═══╯╰ ╰ ╰ ╰ ╰ ╰ ─╯ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.239.191
b98901056:搶頭香推推 請教function在記憶體的儲存方式 11/26 20:07
e221873:ρρ是哪招= = 11/26 21:17
TommyKSHS:To: 1F 這麼奧妙的東西我不會阿 XD 11/26 23:09
TommyKSHS:一樓看看這個? 11/26 23:13
TommyKSHS:http://www.newty.de/fpt/intro.html#what 11/26 23:13
b98901056:thx orz 英文不好 只能慢慢看了 囧 11/27 00:12
b98901056:解決一些 剩下的我用mermory view試看看 再謝Tommy ORZ 11/27 01:38
ym920823:說好得等會兒po勒?!! 11/28 15:24
jaja02:推~ 期待pointer V~ 11/29 16:13
a088753349:挖靠!這麼精簡??推推推~~ 12/02 12:23