2009-11-25 6 views
9

मैं एक फ़ाइल में yacc में मुख्य रूप से पारित तर्क संग्रहीत कर रहा हूं। अब मैं चाहता हूं कि लेक्स टर्मिनल की बजाय इस फाइल से अपना इनपुट पढ़े। मुझे पता है कि मैं जैसे yyin = fopen("fn","r"); पर यिन को इंगित कर सकता हूं लेकिन यह केवल तभी काम करता है जब मुख्य लेक्स में होता है। जब मैं yacc में मुख्य रूप से इस यिन घोषणा का उपयोग करता हूं, तो यह एक त्रुटि दिखाता है, इसलिए कृपया इस समस्या को दूर करने के लिए कुछ सुझाव दें।लेक्स में yaccin को yacc में मुख्य फ़ंक्शन के साथ फ़ाइल में कैसे बनाना है?

उत्तर

23

आप शायद सिर्फ इतना है कि इस समस्या का समाधान नहीं है, तो घोषित करने के लिए

extern FILE * yyin; 

की जरूरत है, त्रुटि संदेश मिल गया का ब्योरा दें।

+0

धन्यवाद दोस्त यह काम किया ... – ajai

संबंधित मुद्दे