如何在C中返回多个不完整的类型?

我是 C 的新手,并在 C 中尝试了 Tensorflow。我可以看到大多数结构都是不完整的类型,我想编写一个函数来初始化它们。例如,下面的代码不起作用。

int main()
{
   TF_Status* Status = NULL;
   TF_Graph* Graph = NULL;
   init(Status);
   return 0;
}

void init(TF_Status* Status, TF_Graph* Graph)
{
   Status = TF_NewStatus();
   Graph = TF_NewGraph();
}

知道我该怎么做吗?

回答

将指向要修改的内容的指针传递给函数以让函数修改它们。

void init(TF_Status** Status, TF_Graph** Graph);

int main(void)
{
   TF_Status* Status = NULL;
   TF_Graph* Graph = NULL;
   init(&Status, &Graph);
   return 0;
}

void init(TF_Status** Status, TF_Graph** Graph)
{
   *Status = TF_NewStatus();
   *Graph = TF_NewGraph();
}


以上是如何在C中返回多个不完整的类型?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>