zoukankan      html  css  js  c++  java
  • 指向指针的指针的理解和应用

    总结:

    1. 申请内存,此处GetMeory参数不用指向指针的指针将无法得到内存,多次调用还会造成内存泄露。  

    当然此处的GetMeory可以用返回指针的方式,这样就可以不用指向指针的指针。

    #include "stdafx.h"
    #include <iostream>
    using namespace std;
    void GetMeory(char **p, int num)
    {
     *p = (char *)malloc(sizeof(char) * num);
     //*p = new char[num];  //C++当中
    }
    int _tmain(int argc, _TCHAR* argv[])
    {
     char *str = NULL;
     GetMeory(&str, 100);
     strcpy(str,"Hello");
     cout << str << endl;
     return 0;
    }
    

    2. 二级指针还经常用在动态申请二维数组

    void main() 
    { 
      int m , n , **p; 
      scanf("%d%d" , &m , &n); 
      p = (int **)malloc(m * sizeof(int *)) 
      //C++中建议使用:p = new int* [m]; 
      for(i = 0 ; i < m ; i++) 
      p[i] = (int *)malloc(n * sizeof(int)); 
      //C++:p[i] = new int[n]; 

      // 释放
      for(i=0; i<m; i++)
      free(p[i]);
      delete [] p[i]; // C++ [] 不可少
      free(p);
      delete [] p;
    }

        

    参考:

    http://www.jb51.net/article/37516.htm

    http://blog.csdn.net/bzhxuexi/article/details/17230073

  • 相关阅读:
    Android深度探索第一章读书笔记
    ocRuntime基本功
    关于堆栈和block之我见
    OC 与 swift 混编杂记
    UItableViewCell自适应高度的坑
    windows蓝屏处理
    MBProgressHUD自定义customView
    svn 配置忽略文件
    ios 开发项目常用第三方库:
    cocoaPod 更换镜像源
  • 原文地址:https://www.cnblogs.com/swing07/p/7787711.html
Copyright © 2011-2022 走看看