ポインタのポインタ
Posted: 2018年1月31日(水) 21:51
こんばんは。
C言語の勉強をしています。ポインタのポインタを用いて
文字列を格納する処理を作成しているのですが、何度
やっても上手くできません。
どのように改良すればよいかご指摘願えないでしょうか?
以下、期待値です。
入力値
7 3
19 0
20 0
21 60
22 30
23 10
24 10
25 90
*ppprobabilityofrain[0]に19を*ppprobabilityofrain[1]に0
++*ppprobabilityofrain[0]に20を++*ppprobabilityofrain[1]に0
をという感じで格納したいです。
C言語の勉強をしています。ポインタのポインタを用いて
文字列を格納する処理を作成しているのですが、何度
やっても上手くできません。
どのように改良すればよいかご指摘願えないでしょうか?
以下、期待値です。
入力値
7 3
19 0
20 0
21 60
22 30
23 10
24 10
25 90
*ppprobabilityofrain[0]に19を*ppprobabilityofrain[1]に0
++*ppprobabilityofrain[0]に20を++*ppprobabilityofrain[1]に0
をという感じで格納したいです。
int main(void)
{
int i;
int j;
int consecutive_holidays_days;
int tripdays;
char str[MAX];
int** ppprobabilityofrain;
int* pprobabilityofrain;
int probabilityofrain[MAX];
fgets(str, sizeof(str), stdin);/*7 3を入力*/
consecutive_holidays_days = atoi(strtok(str, " "));
tripdays = atoi(strtok(NULL, " "));
for (i = 0; i < consecutive_holidays_days; i++)
{
pprobabilityofrain = probabilityofrain;
ppprobabilityofrain = &pprobabilityofrain;
fgets(str, sizeof(str), stdin);
for (j = 0; j < LINE; j++)
{
//メモリの作成(※メモリがどうしてもよみとれない)
++**ppprobabilityofrain = (int)malloc(*pprobabilityofrain);
if (j == 0)
{
*ppprobabilityofrain[j] = atoi(strtok(str, " "));
}
else
{
*ppprobabilityofrain[j] = atoi(strtok(NULL, " "));
}
}
}
}