请C++高手帮我解释下这段话关于栈和堆的区别,有一条是 内存申请方式不同.栈:由系统自动分配内存.堆:由程序员分配,因此

请C++高手帮我解释下这段话
关于栈和堆的区别,有一条是 内存申请方式不同.
栈:由系统自动分配内存.
堆:由程序员分配,因此程序员必须要指明变量的大小.
请问在这里,程序员必须指明变量的大小这句话是什么意思?是要对变量进行赋值
比如说我定义了一个变量
int a;
那么此时的变量a是放在栈区还是堆区?如果是在栈区,那么怎么定义才能放到堆区?怎么为这个变量指明大小?
allen6085 1年前 已收到1个回答 举报

亮一手179 幼苗

共回答了25个问题采纳率:88% 举报

a这个在栈区 由系统分配
如果要放到堆区可以自己开辟10个整数的数组例如
int *p=new int(10)
变量是不能指定大小的,它都是固定不变的.例如
int 4个字节
float 8个字节

1年前

3
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 0.017 s. - webmaster@yulucn.com