gpt4 book ai didi

c - 是否可以使用 GArray 作为 GHashTable 中的值?

转载 作者:行者123 更新时间:2023-11-30 16:54:05 25 4
gpt4 key购买 nike

我正在尝试将字符串映射到 GArrays使用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 值?

最佳答案

菜鸟错误。需要传入&old_array

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);
}

关于c - 是否可以使用 GArray 作为 GHashTable 中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40646055/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com