C/C++内存分布
这是C/C++中程序内存区域划分图:
数据段:也叫静态数据段或初始化数据段,用于存储程序中的全局变量和静态变量,这些变量在程序启动时就已经分配好内存空间并初始化。...ptr1 是局部指针变量,存储在栈上
*ptr1 指向的内容,就是malloc分配的内存,该内存在堆上
总结:
栈(Stack): 用于存储函数调用时的上下文信息,如返回地址、函数参数和局部变量...sizeof: sizeof 是一个操作符,用于获取变量或数据类型的大小(以字节为单位),它在编译时就确定了返回值,不需要在运行时计算,对于数组,sizeof 返回整个数组的大小,而不是单个元素的大小,...new int[10]{ 2,3,4,5,5 };
delete[] ptr3;
return 0;
}
这样一部分初始化想要的值,后面默认初始化为0
使用 new和 delete操作符时,编译器会自动调用构造函数和析构函数...因此,只要我们写好构造函数,new的使用是真香啊