晋江文学城
下一章 上一章  目录  设置

4、第 4 章 堆内存分配 ...

  •   程序运行时地址空间的内存分区:

      代码区——存放程序的代码
      全局数据区——存放程序的全局变量和静态变量数据
      栈区——函数的形参和局部变量所占的空间都是在栈中动态分配的
      堆区——存放程序的动态数据(由new和delete来创建和释放)

      学会动态创建二维数组:
      int **arr;
      int col,row;
      cin>>row>>col;
      arr=new int*[row];//先创建row行,每一行是一个指针
      for(int i=0;i  arr[i]=new int[col];//每一行从指针变成数组
      }

      for(int i=0;i  for(int j=0;j  arr[i][j]=i*col+j;
      }
      }

      for(int i=0;i  for(int j=0;j  cout<  }
      cout<  }

      for(int i=0;i  delete []arr[i];//回收每行数组空间
      }
      delete []arr;//最终回收所有行指针
      (代码大多数都是类似的,仅供参考,而在java中不需要这么麻烦,因为Java有垃圾自动回收机制)
note 作者有话说
第4章 第 4 章

  • 昵称:
  • 评分: 2分|鲜花一捧 1分|一朵小花 0分|交流灌水 0分|别字捉虫 -1分|一块小砖 -2分|砖头一堆
  • 内容:
  •             注:1.评论时输入br/即可换行分段。
  •                 2.发布负分评论消耗的月石并不会给作者。
  •             查看评论规则>>