[問題] typedef的應用
圖: https://imgur.com/a/lTOsLcB
我知道typedef是用來擴充原本的data type。比如:
typedef unsigned char bool; //bool = unsigned char
但在這張圖中:
typedef void (*V_FLOAT_CALLBACK) (int iFloatLevel);
我看不懂這邊為什麼要這樣寫,而且我也找不出它的規則
第二行的 static V_FOLAT_CALLBACK vFloatCallback = NULL;很明顯地告訴我們此type是
V_FLOAT_CALLBACK。加上有一個小v在variable前,我很合理地推斷出第一行應該是要寫:
typedef void (*V_FLOAT_CALLBACK)
所以第二行的原式應該為:
void *vFloatCallback = NULL;
Q1: 那第一行是打錯嗎?後面的int iFloatLevel是多寫的?
Q2: 為什麼在typedef那行要有括號的存在? 我知道括號的功能是要用來防止優先權亂掉,
但根本不會有operator在type的前面吧?
謝謝各位
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.216.156.33
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1530094656.A.04D.html
※ 編輯: zzss2003 (61.216.156.33), 06/27/2018 18:18:42
推
06/27 18:25,
7年前
, 1F
06/27 18:25, 1F
→
06/27 18:26,
7年前
, 2F
06/27 18:26, 2F
→
06/27 18:27,
7年前
, 3F
06/27 18:27, 3F
→
06/27 18:28,
7年前
, 4F
06/27 18:28, 4F
→
06/27 18:36,
7年前
, 5F
06/27 18:36, 5F
推
06/27 18:48,
7年前
, 6F
06/27 18:48, 6F
推
06/27 19:09,
7年前
, 7F
06/27 19:09, 7F
→
06/27 19:11,
7年前
, 8F
06/27 19:11, 8F
推
06/27 19:37,
7年前
, 9F
06/27 19:37, 9F
→
06/27 20:04,
7年前
, 10F
06/27 20:04, 10F
→
06/27 20:06,
7年前
, 11F
06/27 20:06, 11F
→
06/27 20:06,
7年前
, 12F
06/27 20:06, 12F
→
06/27 21:26,
7年前
, 13F
06/27 21:26, 13F
→
06/27 21:26,
7年前
, 14F
06/27 21:26, 14F
→
06/27 21:27,
7年前
, 15F
06/27 21:27, 15F
→
06/27 21:58,
7年前
, 16F
06/27 21:58, 16F
推
06/27 22:31,
7年前
, 17F
06/27 22:31, 17F
→
06/27 22:31,
7年前
, 18F
06/27 22:31, 18F
→
06/27 22:33,
7年前
, 19F
06/27 22:33, 19F
→
06/27 22:33,
7年前
, 20F
06/27 22:33, 20F
→
06/27 22:34,
7年前
, 21F
06/27 22:34, 21F
推
06/27 22:58,
7年前
, 22F
06/27 22:58, 22F
→
06/27 23:01,
7年前
, 23F
06/27 23:01, 23F
→
06/28 00:27,
7年前
, 24F
06/28 00:27, 24F
→
06/28 00:29,
7年前
, 25F
06/28 00:29, 25F
→
06/28 00:34,
7年前
, 26F
06/28 00:34, 26F
→
06/28 00:35,
7年前
, 27F
06/28 00:35, 27F
→
06/28 00:35,
7年前
, 28F
06/28 00:35, 28F
→
06/28 00:35,
7年前
, 29F
06/28 00:35, 29F
→
06/28 00:42,
7年前
, 30F
06/28 00:42, 30F
推
06/28 02:21,
7年前
, 31F
06/28 02:21, 31F
→
06/28 02:21,
7年前
, 32F
06/28 02:21, 32F
謝謝大家,已知用火
※ 編輯: zzss2003 (60.251.49.183), 06/28/2018 17:20:50