3
เค้าโครงหน่วยความจำโครงสร้างใน C
ฉันมีพื้นหลัง C # ฉันเป็นมือใหม่มากสำหรับภาษาระดับต่ำเช่น C ใน C # structหน่วยความจำของคอมไพเลอร์จะจัดวางโดยค่าเริ่มต้น คอมไพเลอร์สามารถเรียงลำดับฟิลด์ข้อมูลใหม่หรือวางบิตเพิ่มเติมระหว่างฟิลด์โดยปริยาย ดังนั้นฉันต้องระบุแอตทริบิวต์พิเศษบางอย่างเพื่อแทนที่พฤติกรรมนี้สำหรับรูปแบบที่แน่นอน AFAIK, C จะไม่เรียงลำดับใหม่หรือจัดรูปแบบหน่วยความจำของ a structตามค่าเริ่มต้น อย่างไรก็ตามฉันได้ยินมาว่ามีข้อยกเว้นเล็กน้อยที่หาได้ยากมาก ลักษณะการจัดวางหน่วยความจำของ C คืออะไร? สิ่งที่ควรเรียงใหม่ / จัดตำแหน่งและไม่?
86
c
struct
memory-layout