Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

รายการสาเหตุทั่วไปสำหรับข้อผิดพลาดในการแบ่งส่วนใน C/C++


สาเหตุหลักของความผิดพลาดในการแบ่งเซ็กเมนต์คือการเข้าถึงหน่วยความจำที่ไม่ได้เริ่มต้น อยู่นอกขอบเขตสำหรับโปรแกรมของคุณ หรือพยายามแก้ไขตัวอักษรสตริง สิ่งเหล่านี้อาจทำให้เกิดข้อผิดพลาดในการแบ่งส่วน แม้ว่าจะไม่รับประกันว่าจะทำให้เกิดข้อผิดพลาดในการแบ่งส่วน ต่อไปนี้คือสาเหตุทั่วไปบางประการสำหรับความผิดพลาดในการแบ่งส่วน -

  • การเข้าถึงอาร์เรย์นอกขอบเขต
  • ลดการอ้างอิงพอยน์เตอร์ NULL
  • Dereferenceing หน่วยความจำว่าง
  • ลดการอ้างอิงตัวชี้ที่ไม่ได้กำหนดค่าเริ่มต้น
  • การใช้โอเปอเรเตอร์ "&" (ที่อยู่) และ "*" (ลดการอ้างอิง) ไม่ถูกต้อง
  • ตัวระบุการจัดรูปแบบที่ไม่เหมาะสมในคำสั่ง printf และ scanf
  • สแตกล้น
  • การเขียนลงในหน่วยความจำแบบอ่านอย่างเดียว