ฟังก์ชันใดจัดสรรหน่วยความจำใหม่

ฟังก์ชันใดจัดสรรหน่วยความจำใหม่
ฟังก์ชันใดจัดสรรหน่วยความจำใหม่
Anonim

ในภาษาการเขียนโปรแกรม C ฟังก์ชัน realloc คือ ใช้เพื่อปรับขนาดบล็อกของหน่วยความจำที่จัดสรรไว้ก่อนหน้านี้ ฟังก์ชัน realloc จะจัดสรรบล็อกหน่วยความจำ (ซึ่งสามารถทำให้ใหญ่ขึ้นหรือเล็กลงกว่าเดิมได้) และคัดลอกเนื้อหาของบล็อกเก่าไปยังบล็อกหน่วยความจำใหม่ หากจำเป็น

คุณจัดสรรหน่วยความจำใหม่อย่างไร

ขนาดของหน่วยความจำที่จัดสรรแบบไดนามิกสามารถเปลี่ยนแปลงได้โดยใช้ realloc ตามมาตรฐาน C99: voidrealloc (void ptr, size_t size); realloc deallocates อ็อบเจ็กต์เก่าที่ชี้โดย ptr และส่งคืนตัวชี้ไปยังอ็อบเจ็กต์ใหม่ที่มีขนาดที่ระบุตามขนาด

ฟังก์ชั่นไหนใช้ปลดหน่วยความจำ

ฟังก์ชั่นฟรี ใช้เพื่อปล่อยหน่วยความจำที่สงวนไว้แบบไดนามิกสำหรับบล็อก & ซึ่งไม่ต้องการอีกต่อไป ไวยากรณ์: เป็นโมฆะฟรี (เป็นโมฆะบล็อก); จะปล่อยบล็อกของตัวชี้ที่ระบุ

การจัดสรรหน่วยความจำใหม่คืออะไร

เมื่อมีการพยายามปรับขนาดบัฟเฟอร์ผ่านการเรียกใช้ฟังก์ชัน realloc ตัวชี้จะถูกตรวจสอบความถูกต้องหากเป็นค่าที่ไม่ใช่ค่า NULL หากถูกต้อง ส่วนหัวของบัฟเฟอร์ฮีพจะถูกตรวจสอบความสอดคล้องกัน จากนั้นบัฟเฟอร์เดิมจะถูกปล่อย …

ฟังก์ชันใดที่ทำให้หน่วยความจำไม่ถูกเตรียมใช้งาน

14 คำตอบ. calloc ให้บัฟเฟอร์เริ่มต้นเป็นศูนย์ในขณะที่ malloc ปล่อยให้หน่วยความจำไม่ได้เตรียมการ