सेगमेंटेशन फॉल्ट कब होता है?

विषयसूची:

सेगमेंटेशन फॉल्ट कब होता है?
सेगमेंटेशन फॉल्ट कब होता है?
Anonim

सेगमेंटेशन फॉल्ट तब होता है जब एक प्रोग्राम किसी मेमोरी लोकेशन को एक्सेस करने का प्रयास करता है जिसे एक्सेस करने की अनुमति नहीं है, या मेमोरी लोकेशन को इस तरह से एक्सेस करने का प्रयास करता है जिसकी अनुमति नहीं है (उदाहरण के लिए, केवल-पढ़ने के स्थान पर लिखने का प्रयास करना, या ऑपरेटिंग सिस्टम के किसी भाग को अधिलेखित करना)।

सेगमेंटेशन फॉल्ट का क्या कारण हो सकता है?

सेग्मेंटेशन फॉल्ट (उर्फ सेगफॉल्ट) एक सामान्य स्थिति है जिसके कारण प्रोग्राम क्रैश हो जाते हैं; वे अक्सर core नामक फ़ाइल से जुड़े होते हैं। Segfaults एक प्रोग्राम के कारण होता है जो एक अवैध मेमोरी लोकेशन को पढ़ने या लिखने का प्रयास करता है।

सेगमेंटेशन फॉल्ट को आप कैसे ठीक करते हैं?

6 उत्तर

  1. अपने एप्लिकेशन को -g के साथ संकलित करें, फिर आपके पास बाइनरी फ़ाइल में डिबग प्रतीक होंगे।
  2. gdb कंसोल को खोलने के लिए gdb का उपयोग करें।
  3. फ़ाइल का उपयोग करें और इसे अपने एप्लिकेशन की बाइनरी फ़ाइल कंसोल में पास करें।
  4. रन का उपयोग करें और किसी भी तर्क में पास करें जिसे आपके आवेदन को शुरू करने की आवश्यकता है।
  5. सेगमेंटेशन फॉल्ट पैदा करने के लिए कुछ करें।

सी++ में सेगमेंटेशन फॉल्ट क्यों होता है?

कोर डंप/सेगमेंटेशन गलती एक विशिष्ट प्रकार की त्रुटि है जो मेमोरी तक पहुंचने के कारण होती है जो "आपकी नहीं है।" जब कोड का एक टुकड़ा मेमोरी में रीड ओनली लोकेशन या मेमोरी के फ्रीड ब्लॉक में रीड एंड राइट ऑपरेशन करने की कोशिश करता है, तो इसे कोर डंप के रूप में जाना जाता है। यह स्मृति भ्रष्टाचार को इंगित करने वाली त्रुटि है।

सेगमेंटेशन फॉल्ट कैसे ढूंढे?

डिबगिंग सेगमेंटेशन फॉल्ट्स का उपयोग करजीईएफ और जीडीबी

  1. चरण 1: GDB के अंदर segfault का कारण। एक उदाहरण segfault पैदा करने वाली फ़ाइल यहाँ पाई जा सकती है। …
  2. चरण 2: समस्या का कारण बनने वाले फ़ंक्शन कॉल का पता लगाएं। …
  3. चरण 3: वेरिएबल और वैल्यू का निरीक्षण करें जब तक कि आपको कोई खराब पॉइंटर या टाइपो न मिल जाए।

सिफारिश की: