我有一个结构,它有2个参数,我创建了一个结构类型的1D指针数组,并为它分配内存。这是发送到一个函数与值添加到它。下面的代码。如何使用动态分配创建二维数组结构?
typedef struct {
char name[LENGTH];
double use;
} Task;
Task *ctask;
task = malloc(8 * sizeof(*task));
insert (Task task[], name, use){
//does something
task[i].name = name;
task[i].use = use;
}
我想知道的是如何创建一个类型为struct(大小为8 * 25)的指针的二维数组。并将其发送到函数insert()。
这是下面正确的:
Task **ctask;
task = malloc(8 * sizeof(*task));
for(int i=0;i<25;i++){
task[i] = malloc(25 * sizeof(*task));
}
当IM将其发送到插入功能是否需要改变或可我只是在发:
insert(task[i], name, use);
感激任何反馈 感谢
嗨,我该如何调用这个2D数组的插入函数(对于你给出的两个例子),只需发送第i行。因为插入行调用另一个结来计算其索引j。对于1d数组,tge的功能如下。 – anisha
插入(任务任务[],char * name1,双重使用) { int i = getindex(name1); task [i] .name = name1; } – anisha
您好, 的为一维数组插入功能是如下: 插入(任务任务[],字符* NAME1,双用途){ INT I = getindex(NAME1); task [i] .name = name1; } 在调用函数时,如何更改插入函数以获得50个元素的1个数组。 – anisha