私はロジックを理解することに問題があるプロジェクトに取り組んでいます。私は誰かが私にそれを説明するか、それを少なくとももっと明確にすることができたことを感謝します。 データ構造が変更された場合、データ構造はハッシュテーブルです。配列ポインタの要素へのポインタ
コード:
typedef struct tHTElem {
char* key;
int data;
struct tHTElem* ptrnext;
} tHTElem;
typedef tHTElem* tHT[MAX_SIZE];
限り、私はこのことを理解し、tHT[]
はtHTElem
を構造化するポインタの配列ですか?
この配列の1つの要素へのポインタを作成したい場合は、このように作成する必要がありますか?
tHTElem *ptrToElem = NULL;
これを初期化しますか?
ptrToElem = tHT[42];
私はちょっとこの中で失われています。..
何かアドバイスをありがとうございました。あなたは構造体を宣言したときにすでにtypedef
ステートメントを使用しているので
あなたは文脈を提供する必要がありますが、 'ptrToElem'が必要な理由や理由がはっきりしません。また、 'tHTElem * ptrToElem = NULL'はすでに' ptrToElem'を 'NULL'に初期化しています。 –
なぜ「MAX_SIZE」ですか? 'tHT'は型名なので、索引付けすることはできません。 – HuStmpHrrr
私はそれがテーブルを持っているの要素を正確に初期化することを念頭に置いています。私はちょうどこの状況をexatで参照と逆参照を使用する方法を混乱させています そしてなぜMAX_SIZE?可能なキーのリストの最大長だけです。 – SevO