size_t 変数と char を持つ構造体の要素を解放しようとしています。次のような警告が表示され続けるため、size_t のものを解放するにはどうすればよいですか
[Warning] passing arg 1 of `free' makes pointer from integer without a cast
キャストを作成する必要があることは理解しましたが、方法がわかりません! コードは次のとおりです。
typedef struct collection
{
char **c;
size_t nc, na, ne;
} TCS, * ACS;
void Destroy(ACS *x)
{
int i;
free((*x)->na);
for(i=0;i<(*x)->nc;i++)
free((*x)->c[i]);
free((*x)->c);
free((*x)->nc);
free((*x)->ne);
}
/* allocating */
ACS AlocCS(size_t d, size_t e)
{
ACS *af=(ACS*)malloc(d);
if(af==NULL)
return 0;
(*af)->na=e;
(*af)->nc=d;
(*af)->c=(char**)calloc(e*d,sizeof(char));
if((*af)->c==NULL){
free(af);
return 0;}
return *af;
}
na,ne,nc に関連する 3 つの警告が表示されます。私は何をスキップしていますか?ありがとう!
LE: みんなありがとう、私のプロジェクトは今動きます! ハッピーホリデー!