我發現了一些代碼,我需要用於我的應用程序,但它有兩條線我不知道他們究竟做了什麼,以及如何...請將它們解釋給我或指引我到一個鏈接,所以我可以閱讀更多關於它。c函數指針解釋
Dict* dcreate(hash_size size, hash_size (*hashfunc) (const char *));
在這裏,我想它是傳遞一個函數作爲參數與它的參數在下面的括號!?
hash_size i = dict->hashfunc(key) % dict->size;
在這裏,我的猜測和我的狗一樣好!
的hashfunc
:
static hash_size def_hashfunc(const char* key){
hash_size s = 0;
while(*key){
s += (unsigned char) *key++;
}
return s;
}
感謝。
他們說什麼。另外,你的標籤中有「散列」,但功能的作用並不重要;這個機制對於非哈希函數是一樣的! – 2011-12-26 09:15:35