Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

C/C++ में कोर डंप (सेगमेंटेशन फॉल्ट)

इस ट्यूटोरियल में, हम C/C++ में कोर डंप (सेगमेंटेशन फॉल्ट) को समझने के लिए एक प्रोग्राम पर चर्चा करेंगे।

ऐसा तब होता है जब कोड रीड ओनली मेमोरी पर लिखने की कोशिश करता है या दूषित मेमोरी लोकेशन तक पहुंचने की कोशिश करता है।

उदाहरण

एक स्ट्रिंग अक्षर को संशोधित करना

int main(){
   char *str;
   str = "GfG";
   *(str+1) = 'n';
   return 0;
}

सरणी अनुक्रमणिका सीमा से बाहर पहुंचना

#include <iostream>
using namespace std;
int main(){
   int arr[2];
   arr[3] = 10;
   return 0;
}

मुक्त किए गए पते तक पहुंच बनाना

#include <stdio.h>
#include<alloc.h>
int main(void){
   int* p = malloc(8);
   *p = 100;
   free(p);
   *p = 110;
   return 0;
}

आउटपुट

Abnormal termination of program

  1. कैसे जांचें कि कोई सी/सी ++ स्ट्रिंग एक int है या नहीं?

    यह जांचने के कई तरीके हैं कि स्ट्रिंग एक इंट है या नहीं और उन तरीकों में से एक है स्ट्रिंग की जांच के लिए isdigit() का उपयोग करना। यह जांचने के लिए यहां एक उदाहरण दिया गया है कि स्ट्रिंग एक int है या नहीं C++ भाषा में, उदाहरण #include<iostream> #include<string.h> using namespace std; i

  1. C/C++ में टर्नरी ऑपरेटर्स

    जिन ऑपरेटरों को कार्य करने के लिए तीन ऑपरेंड की आवश्यकता होती है, उन्हें टर्नरी ऑपरेटर के रूप में जाना जाता है। इसे ? द्वारा दर्शाया जा सकता है? : इसे सशर्त ऑपरेटर के रूप में भी जाना जाता है। ऑपरेटर प्रदर्शन में सुधार करता है और कोड की रेखा को कम करता है। सी भाषा में टर्नरी ऑपरेटर का सिंटैक्स यहां

  1. सी ++ में सेगमेंटेशन गलती वास्तविक अपरिभाषित व्यवहार है?

    अपरिभाषित व्यवहार कार्यान्वयनकर्ताओं (जैसे कंपाइलर या OSes) को स्वतंत्रता देने का एक तरीका है और कंप्यूटर को जो कुछ भी वे चाहते हैं, दूसरे शब्दों में, परिणामों की परवाह न करने के लिए। जिन मामलों में विभाजन दोष होता है वे क्षणिक प्रकृति के होते हैं। वे हमेशा सेगमेंटेशन गलती नहीं करेंगे बल्कि सही तरी