Friday 15 June 2012

Invalid use of undefined type - C -


निम्नलिखित को देखते हुए: -

  #include & lt; stdlib.h & gt; # शामिल करें & lt; stdio.h & gt; #include "SOM.h" int N = 10; इंट फीचर्स = 5; Struct _Node {int x, y; डबल वाई []; }; संरचना नोड ** नोड्स; शून्य मुख्य () {init (); } शून्य init () {int i, j; नोड टीएमपी; नोड्स = मॉलोक (एन * आकार (नोड *)); के लिए (i = 0; i & lt; N; i ++) {नोड्स [i] = मॉलोक (एन * (2 * आकारफ़्लो (इंट) + फीचर्स * आकारओफ़ (डबल))); के लिए (जे = 0; जे एंड एलटी; एन; जे ++) {नोड्स [आई] [जे] - & gt; एक्स = आई; // कठोर लाइन नोड्स [i] [j] - & gt; y = j; // कठोर लाइन नोड्स [i] [j] - & gt; w = {0.0, 0.1}; // परेशानी रेखा}}} शून्य साफ () {//}   

और हैडर: -

  #ifndef SOM #define SOM typedef struct _Node नोड ; शून्य इनिट (); शून्य साफ (); #endif   

मैं संकलन समय पर निम्न प्राप्त कर रहा हूं: -

  SOM.c: फ़ंक्शन में "init" ???? SOM.c: 25: 7: त्रुटि: अपरिभाषित प्रकार के अमान्य उपयोग '' संरचना नोड '??? SOM.c: 25: 15: त्रुटि: अपरिवर्तनीय टाइप करने के लिए पॉइन्टर को dereferencing SOM.c: 26: 7: त्रुटि: अनिर्धारित प्रकार का अमान्य उपयोग â ???? struct Nodeâ ???? SOM.c: 26: 15: त्रुटि: अपरिवर्तनीय प्रकार के संकेतक को dereferencing SOM.c: 27: 7: त्रुटि: अनिर्धारित प्रकार का अमान्य उपयोग â ???? struct Nodeâ ???? SOM.c: 27: 15: त्रुटि: अपरिवर्तनीय प्रकार के लिए पॉइन्टर को dereferencing SOM.c: 27: 24: त्रुटि: अपेक्षित अभिव्यक्ति से पहले ???? ???? टोकन   

हालांकि, मेरे पास (मेरी जानकारी के लिए) _Node संरचना को परिभाषित किया गया है और इसे छद्म नाम नोड दिया गया है मुझे लगता है कि मैं इस त्रुटि को गलत समझ रहा हूँ क्या कोई ये समझाने में सक्षम होगा कि क्या गलत है। मैं एक कोड को ठीक करने की कोशिश नहीं कर रहा हूं, और मैं गलत कहां गया था, इसका विवरण।

यह पंक्ति गलत है: <पूर्व> संरचना नोड ** नोड्स;

इसे या तो होना चाहिए:

  नोड ** नोड्स;   

या: <पूर्व> struct _Node ** नोड्स;

लेकिन दो के मिश्रण नहीं, जैसा कि आप वर्तमान में है।

No comments:

Post a Comment