1)内存的几种分配方式: 静态存储区:全局变量和静态变量 栈空间:局部变量,参数 堆分配(动态) 2)常见的内存处理错误以及策略: 1 分配未成功就开始使用 对策:检测指针是否为NULL(判断) ex:assert(p!=NULL)//若P为函数的参数     if(p!=NULL)/if(p==NULL) //判断分配内存是否有效  2 内存分配成功但没初始化(赋初值)  3 内存分配成功但操作越界  4 忘记释放内存而造成内存泄露  5 释放了内存却继续使用它   原因:过多的对象调用      return语句中返回了指向栈空间的指针或其引用,该内存在函数体结束后自动销毁      使用free/delete后没有将指针置NULL产生野指针 3)数组和指针的区别  1 内容的修改:   ex1: char a[]="hello"; //a为字符数组 a[0]='X';    //a的内容可以修改 cout<
posted on 2006-05-14 15:01 Gerrard 阅读(181) 评论(0)  编辑 收藏 引用 所属分类: C++/C