अनडिफाइंड बिहेवियर कंपाइलर्स या OS के कार्यान्वयनकर्ताओं और कंप्यूटर्स को वह करने की स्वतंत्रता देने का एक तरीका है जो वे "चाहते हैं", दूसरे शब्दों में, परिणामों की परवाह न करना।
जिन मामलों में सेगमेंटेशन फॉल्ट होता है, वे क्षणिक प्रकृति के होते हैं। वे हमेशा सेगमेंटेशन फॉल्ट का परिणाम नहीं देंगे बल्कि सही ढंग से भी चल सकते हैं (या कम से कम ऐसा प्रतीत होता है)। उदाहरण के लिए, निम्न कोड फ्रैगमेंट पर विचार करें:
#include<iostream> int main() { int arr[2]; arr[0] = 0; arr[1] = 1; arr[2] = 2; // अनडिफाइंड बिहेवियर arr[3] = 3; // अनडिफाइंड बिहेवियर }
यह कोड सही ढंग से चल सकता है या सेगमेंटेशन फॉल्ट का परिणाम दे सकता है। यह वास्तव में परिभाषित नहीं है और कार्यान्वयन-निर्भर है। आप अनडिफाइंड बिहेवियर के बारे में यहाँ और पढ़ सकते हैं: https://blog.llvm.org/2011/05/what-every-c-programmer-should-know.html