2013-03-17 4 views
5

लोअरकेस <windows.h> और अपरकेस <Windows.h> हेडर के बीच क्या अंतर है? मैं Win32 प्रोग्रामिंग पर कुछ पुराने ट्यूटोरियल पढ़ रहा हूं और वे सभी लोअरकेस 'डब्ल्यू' का उपयोग करते हैं। कोड ठीक संकलित करता है, लेकिन वीएस 2012 स्वत: पूर्ण सुविधा केवल <Windows.h> शीर्षलेख सूचीबद्ध करती है।लोअरकेस windows.h और अपरकेस Windows.h अंतर?

+0

वे बिल्कुल वही बात हैं। –

+0

मुझे इस सवाल की तरह है क्योंकि आप आमतौर पर यह नहीं पूछते हैं और यह किसी भी तरह से लिखने के लिए 'w' या' W' लिखता है। – MahanGM

उत्तर

12

वहाँ कोई अंतर नहीं है, और न ही वहाँ खिड़कियों पर फ़ाइल नाम (NTFS) के रूप में हो सकता है केस संवेदी है।


वास्तव में, Filenames are Case Sensitive on NTFS Volumes के अनुसार NTFS दो अलग अलग तरीके हैं, जहां एक केस संवेदी है:

NTFS कि NTFS के साथ बातचीत के आवेदन की सबसिस्टम द्वारा चुना जा सकता आपरेशन के दो थोड़ा अलग प्रकार का समर्थन करता है । पहला पूरी तरह से संवेदनशील है और मांग करता है कि एप्लिकेशन द्वारा प्रदान की गई फ़ाइल नाम डिस्क पर संग्रहीत नामों से मेल खाते हैं, यदि डिस्क पर फ़ाइल का चयन किया जाना है। ऑपरेशन का दूसरा तरीका मामला संरक्षित है लेकिन मामला संवेदनशील नहीं है। इसका मतलब यह है कि डिस्क डिस्क पर संग्रहीत नाम के मामले में आपूर्ति किए गए नाम भिन्न होने पर भी डिस्क पर फ़ाइलों का चयन कर सकते हैं। ध्यान दें कि दोनों मोड फाइल बनाने के लिए इस्तेमाल किए गए मामले को संरक्षित करते हैं। यहां ध्यान दिए गए व्यवहार में अंतर केवल तब लागू होता है जब किसी एप्लिकेशन को किसी मौजूदा फ़ाइल को ढूंढने की आवश्यकता होती है। पीओएसईक्स पूर्ण केस संवेदनशील मोड का लाभ उठाता है, जबकि एमएस-डॉस, वाह, और विन 32 सबसिस्टम केस असंवेदनशील मोड का उपयोग करते हैं।

+0

हाँ अब मुझे याद आया, लिनक्स में केस संवेदनशील फ़ाइल नाम हैं, विंडोज़ – balky

2

उन बहुत ही फ़ाइलों विंडोज़ फाइल सिस्टम हैं केस संवेदी

7

विंडोज़ पर फाइल सिस्टम केस असंवेदनशील हैं ताकि कोई भी विंडोज पर संकलन करते समय काम करेगा। हालांकि, उदाहरण के लिए, यदि आप MinGW क्रॉस कंपाइलर का उपयोग कर लिनक्स पर संकलन करना चाहते हैं, तो मामला मायने रखता है।

MinGW windows.h शीर्षलेख हमेशा कम मामला प्रतीत होता है।

माइक्रोसॉफ्ट के उपकरणों के साथ प्रदान की गई Windows.h फ़ाइल ने कई मामलों का उपयोग किया है।

  • वर्ष कुलपति ++ प्रतिष्ठानों (वीसी ++ 98 और पुराने) स्थापित करने के लिए दिखाई देते हैं - कि सभी बड़े अक्षरों
  • नए कुलपति ++ प्रतिष्ठानों और विंडोज SDKs Windows.h
  • कुछ मोबाइल डिवाइस SDK (PocketPC या Windows मोबाइल) का उपयोग करने लगते हैं windows.h - सभी लोअरकेस का उपयोग करें।

windows.h के बाद से हमेशा दोनों Windows और एक लिनक्स क्रूस पर काम करेंगे संकलन, मैं #include <windows.h> का उपयोग करते हैं मैंने कभी इसके बारे में सोचा। जिसे मैं जवाब देने तक याद नहीं कर सकता।

मैं इस बारे में ज्यादा चिंता नहीं करता। यहां तक ​​कि अगर पूंजीकृत रूप को लिनक्स मिनजीडब्लू बिल्ड पर अपना रास्ता मिल जाता है, तो एक आसान (यदि शायद परेशान) फिक्स Windows.h फ़ाइल बनाना है जो बस घूमता है और इसमें windows.h शामिल है।

+2

या एक सिम्लिंक ... –

+1

@R .: हाँ - मेरी विंडोज-केंद्रित सोच दिखाती है। –

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