我正在使用一个函数来修改我的结构数组,称为匹配,通过重新分配匹配并使其更大一个结构:
match = realloc(match, (sizeof(mStruct)*num_matches+1));
结构原型如下:
typedef struct{
char **names;
int score;
int diff;
} mStruct;
问题是,一旦我在struct的内部为每个char数组的char指针数组分配内存,char指针永远不会返回到调用函数,因为我正在返回类型mStruct。
return match;
返回其余的静态声明变量,因为它们不需要特殊的指针。我将如何返回char指针?
我的被调用函数参数如下:
mStruct* trigger(pStruct *mArr, pStruct *wArr, mStruct *match)
调用函数看起来像这样
match = trigger(mArr, wArr, match);