為什麼這篇c語言呼叫副程式鄉民發文收入到精華區:因為在c語言呼叫副程式這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者shemale (誰能了解)看板C_and_CPP標題Re: [問題] C語言compare f...
int *numptr;
是指向int的指標
int (*compare)(char *, char *);
是指向一個函式的指標
這個函式,它所使用的參數是兩個 char *
傳回值是int
例:
int my_compare1(char *k1, char *k2)
{
return strcmp(k1, k2);
}
int my_compare2(char *k1, char *k2)
{
return strcmp(k2, k1);
}
然後
compare = my_compare1;
或
compare = my_compare2;
來指定compare所指的是哪個函式,然後
int i = (*compare)("abc", "def");
呼叫compare所指的那個函式,有可能是my_compare1也可能是my_compare2
就看你最後設的是哪個。
※ 引述《hsnuconan (沒)》之銘言:
: 開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
: linux GCC compiler
: 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
: openCL
: 問題(Question):
: 最近在研究openCL
: 卻發現對方的code非常奇怪
: 因為他一直使用他一直使用int32_t (*compare)(const void *key, const void *with)
: 這個函式 但是從頭到尾都沒有看到他去implement這個這個function
: 因為以前有使用過他來qsort所以清楚叫他出來一定要自己定義
: 所以想問一下這個function究竟在沒有實作的情況下
: 會有什麼default的用途嗎?還是就會出錯?
: 謝謝
--
看了神鵰俠侶,就應該知道年齡不是問題;
看了斷背山後,就應該知道性別不是問題;
看了金剛後,就應該明白是不是人也不是問題;
看了倩女幽魂以後,更要知道活不活著都不是問題……
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 115.43.48.81