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 です。void *他のポインター型に暗黙的に変換できない C++ モードで誤ってコンパイルしていませんか?

于 2012-11-19T22:58:26.320 に答える