5

typedef再帰的な構造体を構築するために使用する必要がありますか?次のコードを使用しようとしましたが、成功しませんでした。

struct teste
{
    int data;
    int data2;
    struct teste to_teste;
};
4

2 に答える 2

13

再帰的な構造体を構築するために必要はありませんtypedef

構造体オブジェクトをオブジェクトに変換する必要がありstruct pointerます。

このような:

struct teste{
  int data;
  int data2;
  struct teste *to_teste;
};
于 2012-11-22T01:19:19.707 に答える
5

あなたはそれ自体の中に同じ構造を持つことはできません。そうすると、その構造のサイズは不定になります。したがって、それは許可されていません。

代わりに、目的を解決するために、それ自体の内部に同じ構造へのポインターを持つことができます。これは、ポインターのサイズがコンパイラーに認識されており、構造体のサイズが明確になっているために機能します。

于 2012-11-22T03:23:38.323 に答える