zoukankan      html  css  js  c++  java
  • c++ 动态数组,指针与动态内存分配

    教学内容:  
       内存的使用
       动态内存分配malloc函数
       分配内存时使用sizeof运算符
       用指针访问内存
       以数组的形式访问内存
    
    
    一、内存的使用
        堆(heap) 
           在程序执行期间分配内存时,内存区域中的这个空间称为堆(heap)。,malloc,calloc
        栈(stack)
           一般是函数分配给本地的参数和本地变量(局部变量)。
    
    二、动态内存分配malloc函数
        在C语言中最简单的内存分配函数是malloc函数,原型如下:  
        void *malloc( size_t size ); 
        // 字节(BYTE) char 成功将返回分配内存空间的地址值,失败将返回NULL也就是0;
           例:
        int *pNum=(int*) malloc(100); //分配100字节,也就是25个int类型的空间
      
    三、分配内存时使用sizeof运算符
     例:
     int *pNum=(int*) malloc(25*sizeof(int)); //分配字节,也就是个int类型的空间  
     double *pfNum=(double *) malloc(25*sizeof(double ));
    
    
    四、用指针访问内存
     int *pNum=(int*) malloc(25*sizeof(int)); 
         int i,*p;
         p=pNum;
         for (i=0;i<25;i++)
         {
           *pNum++=i;
         }
         pNum=p;
          for (i=0;i<25;i++)
         {
          printf("%d,", *pNum++); //pNum=pNum+25;
         }
        
        getchar();
    五、以数组的形式访问内存
     int *pNum=(int*) malloc(24*sizeof(int)); //3*8,4*6,6*4,2,12
         int i;
         
         for (i=0;i<25;i++)
         {
            pNum[i]=i;
         }
         
          for (i=0;i<25;i++)
         {
          printf("%d,", pNum[i]); //pNum=pNum+25;
         }
  • 相关阅读:
    Clouds
    docs
    虚拟化监控问题
    Openstack Ceilometer监控项扩展
    openStack ceilometer API
    sql分级汇总
    【Android归纳】阿里笔试题之Android网络优化
    享元模式
    【Hibernate步步为营】--核心对象+持久对象全析(三)
    Linux经常使用命令(三)
  • 原文地址:https://www.cnblogs.com/whzym111/p/6118941.html
Copyright © 2011-2022 走看看