gpt4 book ai didi

从不同大小的整数转换为指针

转载 作者:太空宇宙 更新时间:2023-11-04 02:05:02 25 4
gpt4 key购买 nike

我正在尝试将 int 作为值插入 gtree,它来自 glib。我不知道我应该如何分配和插入它。在这里您可以看到我尝试过的内容:

void readFilec(GTree *tree)
{
FILE *fp = fopen("cfg/file.csv", "rb" );
char * line = NULL;
size_t len = 0;
ssize_t read;

if (fp == NULL)
exit(EXIT_FAILURE);
char *p1;
int p2;
while ((read = getline(&line, &len, fp)) != -1)
{
printf("%s", line);
p1 = strtok(line, "|");
p2 = (int)atoi(strtok(NULL, "|"));
g_tree_insert(tree,(gpointer *) g_strdup(p1), (gpointer *) p2);

printf("-%s%d ", p1, p2);

}

if (line)
free(line);
//exit(EXIT_SUCCESS);

}

我读的文件是这样的:

cfg/file.csv
AA1.E|1
AA2.E|2

最佳答案

尝试删除 gpointer 后面的 *,因为它已经是一个 void* 并在 p2 前面添加 '&' 以获取其地址。

g_tree_insert(tree, (gpointer) g_strdup(p1), (gpointer)  &p2);

关于从不同大小的整数转换为指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21699136/

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