1

我正在尝试使用以下表达式将内存重新分配给我的表。但我总是不断收到以下错误。请告诉我。

typedef char *OFAttribs[6];
 OFAttribs *tmp = realloc(pTable, sizeof(*tmp) * (nTableLen+1));

Error: invalid conversion from âvoid*â to âchar* (*)[6]â
4

2 回答 2

2

试试这个:

OFAttribs *tmp = (OFAttribs*) realloc(pTable, sizeof(*tmp) * (nTableLen+1));
于 2012-11-19T22:47:06.870 回答
2

您显示的代码是有效的 C。您确定您没有错误地在 C++ 模式下编译,其中void *不能隐式转换为其他指针类型?

于 2012-11-19T22:58:26.320 回答