2

私は構造体にいくつかの問題を抱えています..

次のコードがあります。

typedef struct filaNo{   
     Range data;   
     struct filaNo* prox; 
  }tfilaNo;                    

typedef struct tfifo {        
     tfilaNo* inicio;   
     tfilaNo* final;       
  } tfifo;  

そして、このリストを別の構造体に含めたい:

typedef struct  
{
int    threadId;
    double threshold;
    double areaCalc;
    tfifo  intervalos;
}ThreadData;

tfifo のみを使用すると完全に機能しますが、ThreadData に含めると、55 個のエラー (「構文エラー: 識別子 'tfifo'」など) が表示され、他の多くのエラーが発生します... コンパイラが失われたようです.

これを解決する方法を知っている人はいますか?

どうもありがとうございました!

編集:いくつかのコード:)

tfifo は単独で問題なく動作します。次のようなことができます。

tfila doc;                                     
Range range;
int a;   

create_fifo(&doc);      

range.p1.x = 0;
range.p2.x = 33;
range.p1.y = 0;
range.p2.y = 0;
range.area = 0;

insert_fifo (&doc, range);   

while(!empty_fifo(doc)){   
    remove_fifo(&doc,&range);         
    printf("    %d\n", range.p2.x);   
}        

すべての ThreadData 構造体のリストが必要なので、これを ThreadData に含めたいと思います。

エラー 2 エラー C2059: 構文エラー: '}' エラー 1 エラー C2061: 構文エラー: 識別子 'tfila'
エラー 18 エラー C2065: 'i': 宣言されていない識別子

しかし、コンパイラはこの後完全に失われます...存在しない多くのエラーを私に与えます...

4

2 に答える 2

1

これは本当のコードですか、それともタイプミスですか?

typedef struct tfifo {        
 tfilaNo* inicio;   
 tfilaNo* final;       

} tfifo;

構造体と typedef に同じ名前を使用しています。多分これが問題です。

于 2013-09-24T19:42:45.510 に答える