0
GHashTableを使用して文字列をGArraysにマップしようとしています。これまでのところ、私は成功していません。GArrayをGHashTableの値として使用できますか?
私はそうのようなハッシュテーブルを宣言します。
hash_table = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL);
そしてそうのように私のガライ:
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
の値を避けることができますか?