![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
动态内存
文章平均质量分 54
动态内存
weixin_46060711
c/c++
展开
-
动态内存的分配、使用、释放
动态内存的分配、使用、释放new 和 delete 基本语法 :1)在软件项目开发过程中,我们经常需要动态地分配和撤销内存空间,特别是数据结构中结点的插入与删除。C 语言是利用库函数 malloc 和 free 来分配和撤销内存空间的。C++提供了较简便而功能较强的运算符 new 和 delete 来 取代 malloc 和 free 函数。(注意: new 和 delete 是运算符,不是函数,因此执行效率高。)2)虽然为了与 C 语言兼容,C++仍保留 malloc 和 free 函数,但建原创 2021-12-18 14:22:58 · 1038 阅读 · 0 评论 -
函数返回指针时,不能返回临时变量的地址,会出问题
函数返回指针时,不能返回临时变量的地址:代码如下,#include<iostream>#include<Windows.h>using namespace std;int *add1(int x, int y) { int sum = x + y; return ∑}int main(void) { int a = 3; int b = 5; int *sum = NULL; sum = add1(a, b); cout <原创 2021-12-08 23:04:36 · 959 阅读 · 0 评论 -
为什么要使用动态内存
为什么要使用动态内存:1.按需分配内存,用完就释放,不浪费2.被调用函数之外需要使用被调用函数内部的指针对应的地址空间3.突破栈区的限制,给程序分配更多的内存1.按需分配内存,用完就释放,不浪费使用的编译器为:VC++ 2010#include<stdio.h>#include<stdlib.h>#include<string.h>int main(void) { int farmer[10] = {160,230,100,650,490,330,5原创 2021-12-07 17:52:22 · 785 阅读 · 0 评论 -
分配动态内存的函数new与malloc
1.new1)分配一个整型变量的动态内存有两种方式#include<stdio.h>#inlcude<stdlib.h> int main(void) { int num = 0; int *salary = NULL; //salary = new int(666);//第一种 直接赋值,这次赋的值为668 salary = new int;//第二种 先分配, *salary = 666;//再赋值 printf("salary:%d\n", *s原创 2021-12-07 15:57:44 · 91 阅读 · 0 评论