0
我正在嘗試使用GHashTable將字符串映射到GArrays。到目前爲止,我還沒有成功。是否可以使用GArray作爲GHashTable中的值?
我宣佈哈希表所示:
hash_table = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL);
而且我GArray像這樣:
array = g_array_new(1, 1, sizeof(uint64_t));
我試圖插入數組的哈希表。插入它後,我檢查它是否在那裏。關鍵似乎在那裏,但其哈希值爲NULL
。
GArray *old_array;
g_hash_table_insert(hash_table,
(gpointer) g_strdup(path),
(gpointer) array);
if (g_hash_table_lookup_extended(hash_table,
path, NULL, (void **) old_array)) {
printf("stored value is %p\n", old_array);
}
是我想做的事情嗎?如果是這樣,我該如何避免NULL
的值?