यदि मैं निर्देशिका फ़ाइलों को हेडर फाइलों के लिए खोजना चाहता हूं, तो पसंदीदा तरीका क्यों है और क्यों?-I dir vs. -isystem dir
उत्तर
निर्देशिका की सूची के सिर करने के लिए निर्देशिका निर्देशिका जोड़ें हेडर फाइल के लिए खोज की जा करने के लिए। इसका उपयोग सिस्टम हेडर फ़ाइल को ओवरराइड करने के लिए किया जा सकता है, जो आपके स्वयं के संस्करण को प्रतिस्थापित कर सकता है, क्योंकि इन निर्देशिकाओं को सिस्टम हेडर फ़ाइल निर्देशिका से पहले खोजा जाता है। हालांकि, आपको निर्देशिका को जोड़ने के लिए इस विकल्प का उपयोग नहीं करना चाहिए जिसमें विक्रेता द्वारा आपूर्ति की गई सिस्टम शीर्षलेख फ़ाइलें शामिल हों (इसके लिए उपयोग-सिस्टम)। यदि आप एक से अधिक विकल्प चुनते हैं, तो निर्देशिका बाएं से दाएं क्रम में स्कैन की जाती है; मानक सिस्टम निर्देशिका के बाद आते हैं।
यदि किसी मानक सिस्टम में निर्देशिका, या सिस्टम के साथ निर्दिष्ट निर्देशिका शामिल है, तो I-the-I विकल्प को अनदेखा कर दिया जाएगा। निर्देशिका अभी भी खोजी जाएगी लेकिन सिस्टम में इसकी सामान्य स्थिति में सिस्टम निर्देशिका के रूप में श्रृंखला शामिल है। यह सुनिश्चित करना है कि जीजी की प्रक्रिया बग्गी सिस्टम हेडर को ठीक करने और include_next निर्देश के लिए ऑर्डरिंग अनजाने में परिवर्तित नहीं है। यदि आपको सिस्टम निर्देशिकाओं के लिए खोज आदेश को बदलने की ज़रूरत है, तो नॉस्टडिंक और/या-सिस्टम विकल्प का उपयोग करें।
तो -I
शायद विक्रेता द्वारा आपूर्ति किए गए सिस्टम शीर्षकों जैसे विशेष मामलों को छोड़कर, आपकी शीर्षलेख फ़ाइलों के स्थान को निर्दिष्ट करने का पसंदीदा विकल्प है।
आपको अपने शीर्षकों का स्थान निर्दिष्ट करने के लिए उपयोग करना चाहिए।
आपके द्वारा निर्दिष्ट सिस्टम-सिस्टम को बाद में खोजा जाता है- मुझे संसाधित किया जाता है और जीसीसी द्वारा मानक उपचार प्राप्त होता है (मानक सिस्टम हेडर के समान)।
यह देखने का एक तरीका हेडर का उपयोग करना है जिसे आप -I
के साथ नियंत्रित करते हैं और जिन्हें आप -isystem
के साथ नहीं करते हैं (सिस्टम, तृतीय पक्ष libs)। व्यावहारिक अंतर तब आता है जब -isystem
हेडर से आने वाली चेतावनियों में चेतावनियां सक्षम की जाती हैं।
जब आप एक शीर्षक "Myheader.h" का उपयोग करते हुए- I का उपयोग करते हैं, तो संकलक खोज आदेश उत्पन्न करता है: "Myheader.h", "system/headers"। तो अगर "MyHeader.h" में कुछ नहीं पाया जा सकता है तो आप "सिस्टम/हेडर" पर फ़ॉलबैक करते हैं। हालांकि जब आप सिस्टम सिस्टम का उपयोग करते हैं, तो आप मूल रूप से कह रहे हैं कि जो भी मैं आपको देता हूं उसके साथ "सिस्टम/हेडर" को प्रतिस्थापित करें। तो अब "सिस्टम/हेडर" पर वापस नहीं आ रहा है।
- 1. विंडोज dir
- 2. rsync को dir
- 3. Django heroku static dir
- 4. grails-app/utils dir
- 5. दबाने निर्देशिका नाम DIR
- 6. अजगर "dir" Clojure
- 7. GWT - आरपीसी - dir
- 8. पूर्ववत करें "गिट <dir> जोड़ें"?
- 9. inspect.getmembers() __dict बनाम __। आइटम() dir बनाम()
- 10. ~/.npm dir के लिए क्या है?
- 11. cmd dir/b/s प्लस दिनांक
- 12. dir हेरफेर (__ DIR__) काम कर का पालन नहीं कर
- 13. क्या svndumpfilter द्वारा भंडार में dir नाम बदलना संभव है?
- 14. Dir का छोटा संस्करण [File.join (File.dirname (__ FILE__), "उपनिर्देशिका/**/*। आरबी")]?
- 15. मैं PowerShell में 'dir/s/b' कैसे करूं?
- 16. Android में बाहरी फ़ाइलें Dir नहीं बना सकते हैं। WRITE_EXTERNAL_STORAGE
- 17. कैसे है कि क्या एक फ़ाइल/dir बैच स्क्रिप्ट
- 18. गिट के साथ --git-dir = परिणाम 'गिट रिपोजिटरी नहीं'
- 19. -isystem बजाय CMake
- 20. क्या मैं .dir-locals.el में मनमानी elisp कोड डाल सकता हूँ?
- 21. Django -vs- Grails -vs-?
- 22. पायथन में dir() को प्रिंट फ़ंक्शन क्यों पास नहीं किया जा सकता है?
- 23. असुरक्षित दुनिया लिखने योग्य dir/उपयोगकर्ताओं/पथ में उपयोगकर्ता नाम, मोड 040,777 जब चल रूबी आदेश
- 24. कुछ कॉल करने योग्य गुण dir() फ़ंक्शन द्वारा सूचीबद्ध क्यों नहीं हैं?
- 25. क्यूटी - एक मनमानी उपयोगकर्ता के लिए "Temp" dir कैसे प्राप्त करें?
- 26. रूबी मणि सूचीबद्ध है, लेकिन अभ्यस्त लोड (उपयोगकर्ता निर्देशिका में मणि, नहीं dir रूबी)
- 27. जावा ट्री पथों की सूची से फाइल सिस्टम (फ़ाइलें/dir) का प्रतिनिधित्व करने
- 28. फ़ाइल में 'dir` आउटपुट को रीडायरेक्ट करने के बाद गलत एन्कोडिंग
- 29. क्या .NET mvc bin dir स्थान को बदलने का कोई तरीका है?
- 30. mysql त्रुटि: ERROR 1018 (HY000): '।' के dir को नहीं पढ़ सकता (Errno: 13)
होस्ट मानक सी पुस्तकालय को शामिल या बहिष्कृत करना? –
न ही एक, न ही दूसरा। प्रीप्रोकैसिंग विकल्पों के बारे में जीसीसी मैनुअल में बस पढ़ें और इन दोनों पर ठोकर खाई। – helpermethod