構造体Aとその構造体のインスタンスへのポインタの配列を持っています
配列からメンバーに直接アクセスしようとしていますが、それを行うには正しい構文:構造体へのポインタのC配列
struct A
{
int a;
void** b;
}
A* p = (A*) malloc(sizeof(A));
p->b = (A**) malloc(sizeof(A*) * 3);
//
// something is done
//
int c;
A* test = p->b[0];
c = test->a;
基本的に私が求めているものを、私は1行でcの値を割り当てることができますので、私は中間の*テストを取り除くどうやっているのですか?
なぜ 'void **'で、 'struct A **'でないのですか? – alk
それは無事です。 私は何をしているのか、ここには表示されていないのは空白が必要です。 問題は2つの最後の行にあります。 – user3548298
'p-> b =(A **)malloc(sizeof(A *)* 3);'が整形されていないと、コンパイラは文句を言います –