ylww

随笔仅作学习记录,请辩证参考!!!

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

 

 

 

 

4.文字常量区:

p与p1的指针地址一致,且字符串常量是不能被改变的。

结论:C++中同一字符串常量只有一份,且保存在常量存储区,其生命周期从程序运行开始到程序结束。

但是p与p1指针变量在函数结束时,就会结束生命。

 

 

 

5.程序代码区:存放一系列代码。

 

 

动态内存

1.按需分配,根据需要分配内存,不浪费。

内存拷贝函数

void *memcpy(void *dest, const void *src, size_t n);     #include <string.h>

功能:从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。

2.被调用函数之外需要使用被调用函数内部的指针对应的地址空间(动态内存不释放就会一直存在,直到进程结束。)

new  delete C++的动态内存分配运算符;c语言是 malloc函数,参数是所需内存的字节数,返回指针类型是void*,需要强制类型转化(int* p = (int *)malloc(字节数)),c中释放用free(地址)

3.突破栈的限制,可以分配更多的空间。

 

动态内存的分配,使用,释放

 new free可以混搭用,malloc delete可以混搭用。

用delete时,定义时带着[ ]时,delete时要:delete[ ]  地址名。 因为malloc的参数是字节数,所以delete时,不用加[ ]。

posted on 2022-06-02 18:07  理想主义者光芒万丈  阅读(74)  评论(0)    收藏  举报