#include<iostream> #include<string> using namespace std; int* func(int b) { //形参也放在栈区 int * p=new int(10); return p; } //2、在堆区利用new开辟数组 void test02() {//创建10整型数据的数组,在堆区 int * arr = new int[10]; //10代表数组有10个元素 for (int i = 0; i < 10; i++) { arr[i] = i + 100; //给10个元素赋值 100~ 109 } for (int i = 0; i < 10; i++) { cout << arr[i] <<endl; } } int main() { int*p = func(1); cout << *p << endl; cout << *p << endl; cout << *p << endl; //堆区的数据由程序员管理开辟,程序员管理释放 //如果想释放堆区的数据,利用关键字delete delete p; cout << *p << endl; system("pause"); }
C++ 堆区内存分配
原创
©著作权归作者所有:来自51CTO博客作者程序猿联盟的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:C++教程 2021年第一部分
下一篇:C语言构建一个链表以及操作链表
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
C/C++内存分配
内存分配不当有什么后果?引起堆栈溢
c++ c语言 开发语言 内存分配 初始化 -
C/C++内存分配函数
malloc:原型:extern void *malloc(unsigned int num_bytes);头文件:在TC2.0中可以用mallo=
malloc calloc realloc 数据 内存空间 -
c++中堆、栈内存分配
一个由C/C++编译程序占用内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数参数值,局部变量值等
局部变量 链表 初始化 静态变量 结点