在数组结构中返回一个2D数组

时间:2013-02-07 01:11:24

标签: arrays function struct return dynamic-allocation

我正在使用一个函数来修改我的结构数组,称为匹配,通过重新分配匹配并使其更大一个结构:

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);

0 个答案:

没有答案