0
我试图做一个程序,对于给定的int value
保持分隔量的数组:
int amount_of_dividers
和那些分隔的列表:int* dividers
添加指针的指针
这是代码:
#include <stdio.h>
#include <stdlib.h>
typedef struct{
int value;
int amount;
int* dividers;
} Divide;
int main(){
Divide ** tt;
read_dividers(tt,5);
}
/* the functions "amount_of_dividers(int g)" and "dividers_of(int g, int amount)"
used in void read_divider are working properly, they are not needed for this question */
void read_divider(Divide *g){
scanf("%d",&(g->value));
g->amount = amount_of_dividers(g->value);
g->dividers = dividers_of(g->value,g->amount);
}
/* assuming that read_divider works, what causes read_dividerS to crash? */
void read_dividers(Divide ** t, int amount){
int i = 0;
t = malloc(amount*sizeof(Divide*));
for(i = 0;i<amount;i++){
read_divider(t[i]);
}
}
Read_dividers使用指针**t
其中我试图填补这个阵列的每个元件具有一个指针指向一个Divide g
变量的阵列。 ():“read_dividers(tt,5)”表示用户给出了5个int
,它们被转换为5个Divide
结构体。编辑:在这种情况下在main()中输入:“read_dividers(tt,5)”表示用户给出5个int
的结构体。 然而,我发现第二个程序崩溃后会发生什么情况int
如果缺少更多信息,请不要犹豫,问问!
什么是你的问题...有什么不工作? – Varun
请提供您正在提供的输入以及您收到的输出与您期望作为输出接收的输出。 – stringsn88keys
@Varun请参阅下面的代码“编辑”,我是新来的这个网站;在尽量缩短问题的同时尽量减少我需要提供的信息。 –