構造体の配列をC言語で設定しようとしています。実行時まで配列のサイズがわからないため、配列を動的に定義しようとしました。私は以下のコードに自分の問題を減らしました(それぞれの構造体にはいくつかのメンバーがありますが、問題はありません)。struct内の構造体の配列
//struct definitions
struct intStream {
int test;
};
struct io {
struct inStream **inputStream;
};
// then proceed to main
int numDevices = 4; //(derived from number of devices found at runtime)
struct io *devices;
devices->inputStream = malloc(sizeof(struct inStream) * numDevices)
// Fails on
devices->inputStream[0]->test = 1;
メモリの私の理解が完全ではありませんが、いくつかの検索を通じて、私は審美的に私は構造体ハック以外に私の問題への代替解決策を見つけることができませんでしたので、私は、まだCスタイルのプログラミングに比較的新しいです好きではないだけでなく、将来的にはより多くの配列を含めることを望んでいます。
。あなたはそれが何を指していると思いますか? –
質問に答えを加えないでください、ありがとう。 :) –
@ n.m。私は自分の道の誤りを見せている; – Rampartisan