Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

การจัดการหน่วยความจำระดับกลางใน C++: Stack หรือ Heap?

Stack และ Heap ใช้จัดเก็บตัวแปรระหว่างการทำงานของโปรแกรมและจะถูกทำลายเมื่อจบการทำงาน

โครงสร้างข้อมูลหรือตัวแปรระดับกลาง (Global) ไม่ได้ถูกจัดเก็บใน Stack หรือ Heap พวกมันถูกจัดสรรในบล็อกหน่วยความจำคงที่ ซึ่งคงที่ตลอดการทำงาน

int a[10]; // ตั้งอยู่ในบล็อกหน่วยความจำคงที่
int main() {
    float *ptr = (int *)malloc(sizeof(float) * 10.0); // ใช้ heap
}