0
나는 주어진 int value
에 대한 디바이더의 양을 유지하는 프로그램을 만들려고 노력하고있어의 배열에 대한 포인터를 추가 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 내가 Divide g
변수에 대한 포인터로이 어레이의 각 요소를 채울려고 **t
포인터들의 어레이를 사용한다.
EDIT :이 경우 main()의 입력 : "read_dividers (tt, 5)"는 사용자가 5 int
의 값을 제공하고 5 Divide
구조체로 변환됨을 의미합니다. 두 번째로 입력하면 프로그램이 중단됩니다. int
더 많은 정보가 누락 된 경우 언제든지 문의하십시오.
정확히 무엇이 문제입니까? 작동하지 않는 것이 있습니까? – Varun
제공하고있는 입력과받는 출력을 제공하고 출력으로받을 것으로 예상되는 것을 제공하십시오. – stringsn88keys
@Varun 코드 아래의 "편집"을 참조하십시오,이 사이트를 처음 사용합니다. 어떤 종류의 정보를 제공해야할지 고민하면서 가능한 한 질문을 짧게 만드는 것입니다. –