【发布时间】:2018-10-13 21:38:54
【问题描述】:
我有一个函数会返回一个空指针。我需要将其转换为结构变量。例如结构是
struct book{
char* name;
int pages;
}
我已经为结构分配了一个本地指针,如下所示:
struct book* ptr;
该函数返回一个 void 指针,我需要将其转换为书本指针。我可以这样做吗?
ptr = function_name(); //void pointer returned
或者我是否必须在本地 void 指针中“捕获”返回的 void 指针,然后将其转换为 ptr?
谢谢!
【问题讨论】:
-
您的编译器是否抱怨分配?或者是什么引起了您的怀疑?
-
嗯,我知道我需要将它转换为书本指针。但是,我也知道我不能像上面那样简单地分配值。我只是在寻找正确的语法,以便在函数调用后从 void 指针转换为书本指针。
-
C 标准说你可以分配它,是什么让你认为你不能?
-
你为什么不尝试之前问这个问题!?