সেগমেন্টেশন ফল্টের প্রধান কারণ হল মেমরি অ্যাক্সেস করা যা হয় আরম্ভ করা হয়নি, আপনার প্রোগ্রামের সীমার বাইরে বা স্ট্রিং লিটারেল পরিবর্তন করার চেষ্টা করা। এটি একটি বিভাজন ত্রুটি সৃষ্টি করতে পারে যদিও এটি নিশ্চিত নয় যে তারা একটি বিভাজন ত্রুটি সৃষ্টি করবে। এখানে সেগমেন্টেশন ফল্টের কিছু সাধারণ কারণ রয়েছে -
- সীমার বাইরে একটি অ্যারে অ্যাক্সেস করা
- NULL পয়েন্টারকে উল্লেখ করা
- রেফারেন্সিং মুক্ত মেমরি
- অপ্রাথমিক পয়েন্টার উল্লেখ করা
- "&" (এর ঠিকানা) এবং "*" (রেফারেন্সিং) অপারেটরগুলির ভুল ব্যবহার
- প্রিন্টএফ এবং স্ক্যানফ স্টেটমেন্টে অনুপযুক্ত ফর্ম্যাটিং স্পেসিফায়ার
- স্ট্যাক ওভারফ্লো
- শুধু পড়ার মেমরিতে লেখা