मैं एक छोटे से सी संकलक लिखने के लिए देख रहा हूँ, और मैं कहीं भी C99 के लिए व्याकरण को खोजने के लिए प्रतीत नहीं कर सकते हैं। मुझे सी 9 0 और सी 99 मानकों का दस्तावेज मिला है, लेकिन मुझे व्याकरण कहीं भी नहीं मिल रहा है। C99 मानक मेंमुझे सी 0 9 0 और सी 99 के लिए स्पष्ट व्याकरण कहां मिल सकता है?
5
A
उत्तर
8
अनुबंध A (linked by Wikipedia के रूप में) बहुत मेरे लिए एक व्याकरण की तरह दिखता है।
जहां तक मुझे याद है, कुछ पहचानकर्ताओं से टाइप किए गए टाइप किए गए नामों के साथ कुछ अतिरिक्त व्याकरण संबंधी मुद्दे हैं, जिसका मतलब है कि कोई इसे केवल yacc में नहीं खिला सकता है और इसे काम करने की उम्मीद कर सकता है, लेकिन यह सबसे अधिक आधिकारिक स्रोत है जो आपको मिलेगा ।
संबंधित मुद्दे
- 1. मुझे सी # 3.0 व्याकरण कहां मिल सकता है?
- 2. [0-9] + और [0-9] ++ के बीच क्या अंतर है?
- 3. मैटलैब के लिए औपचारिक व्याकरण कहां मिल सकता है?
- 4. फोरट्रान 9 0 से सी # रूपांतरण समस्या
- 5. सी ++ 0 और 0.0
- 6. (char) 0 और '\ 0' के बीच क्या अंतर है? सी
- 7. आईई 9 0 ईटीएजी
- 8. मुझे अच्छा सी ++ स्रोत कोड कहां मिल सकता है?
- 9. मुझे सी # के लिए आईसीक्यू लाइब्रेरी कहां मिल सकती है?
- 10. मुझे GACUtil कहां मिल सकता है?
- 11. मुझे सी ++ सीसाउंड ट्यूटोरियल कहां मिल सकता है?
- 12. सी 99 सहयोगीता - यह कहां निर्दिष्ट है?
- 13. मुझे एक मुफ्त सी # ईबुक कहां मिल सकता है?
- 14. फोरट्रान 9 0 संसाधन?
- 15. मुझे SilverlightUIAutomationHelper.dll कहां मिल सकता है?
- 16. मुझे सी # 5 भाषा विनिर्देश कहां मिल सकता है?
- 17. मुझे diff एल्गोरिदम कहां मिल सकता है?
- 18. बी सी सी CHECKIDENT 0
- 19. सी में 0 क्या है?
- 20. मुझे पाइथन के लिए vtk दस्तावेज़ कहां मिल सकता है?
- 21. सी ++ में '\ 0' क्या है?
- 22. सी ++ विभाजन 0
- 23. क्लैंग के लिए मुझे ट्यूटोरियल कहां मिल सकता है?
- 24. निर्धारित करें कि सी 0 स्ट्रिंग सी
- 25. मुझे WSDL.exe कहां मिल सकता है?
- 26. पर्ल प्रोग्रामिंग भाषा के लिए मुझे औपचारिक व्याकरण कहां मिल सकता है?
- 27. सी 3 पी 0 विन्यास! कहां और कैसे?
- 28. मुझे विंडोज़ के लिए libsmi 64bit कहां मिल सकता है?
- 29. 0 + 0 + 0 ... + 0! = 0
- 30. ईबीएनएफ सीखने के लिए मुझे सामग्री कहां मिल सकती है?
वास्तव में वहाँ हैं। Typedef नाम प्रभावी रूप से परिभाषित किए जाने के बाद कीवर्ड बन जाते हैं, लेकिन जब वे दायरे से बाहर जाते हैं तो वे कीवर्ड होने से रोकते हैं। इसका मतलब है कि आपको प्रतीक तालिका से पार्सर में कुछ प्रकार की प्रतिक्रिया की आवश्यकता है, कुछ ऐसा (मुझे लगता है) अधिकांश अन्य भाषाओं की आवश्यकता नहीं है। सिर्फ एक उदाहरण: आप 'foo' टाइप टाइपिफ़ है या नहीं, यह जानने के बिना' sizeof (foo [10]) को पार्स नहीं कर सकते हैं। (ऐतिहासिक रूप से, इस वजह से typedefs भाषा के लिए एक अपेक्षाकृत देर से इसके अतिरिक्त थे -। पूर्व कश्मीर एंड आर, लेकिन उसके बाद प्रकार प्रणाली परिभाषित किया गया था) –
... और typedef मुद्दे से निपटने के बाद भी, संभवतः-सार declarators पार्स करने _surprisingly_ है जटिल। एक स्नातक छात्र के रूप में, मैं एक अनुसंधान परियोजना के लिए एक सी पार्सर लिखा था, और के रूप में मैं यह पता लगाने की उसे सही ढंग से करते हैं प्रयास किया मैं एक और मौजूदा कार्यान्वयन मैं की खुदाई कर सकता है, उस समय जीसीसी के पार्सर सहित के हर के लिए जवाबी उदाहरण की खोज की। ऐसा नहीं है कि अब मैं किसी भी counterexamples, और न ही अन्य विवरण याद कर सकते हैं। वे बालों वाले थे। –
ठीक है, मैं शापित हो जाऊंगा, अब मुझे गूंगा लगता है। व्याकरण की संदर्भ संवेदनशीलता के लिए, मैं आगे बढ़ने जा रहा हूं और अभी अनदेखा कर रहा हूं ... मैं अभी तक पूरी तरह से विशेषीकृत कंपाइलर नहीं लिख रहा हूं ... – Alex