C++关于char*型数组的new与delete
2017-02-24 11:06
204 查看
1.有一个new操作,就需要一个delete操作;
2.有一个new []操作,就需要一个delete[]操作,否则内存泄漏
所以应该是{char* s = new char[100];delete[] s;}
s本身存在于栈,指向的空间位于堆;
3.char* s = “hello”;//“hello”是常量,会被放入全局变量区,不会因为结束而消失。s是栈区会消失;
4.最后一个,如果在bar返回后,直接丢弃返回的指针,肯定会内存泄漏
2.有一个new []操作,就需要一个delete[]操作,否则内存泄漏
所以应该是{char* s = new char[100];delete[] s;}
s本身存在于栈,指向的空间位于堆;
3.char* s = “hello”;//“hello”是常量,会被放入全局变量区,不会因为结束而消失。s是栈区会消失;
4.最后一个,如果在bar返回后,直接丢弃返回的指针,肯定会内存泄漏
相关文章推荐
- new、delete、指向连续空间的指针、数组、空间释放、空间申请[C++][内存管理]
- C++中关于new和delete的使用
- 关于LinuxC/C++中字符指针char * str 与字符数组 char str []的一点小区别
- C++中关于new和delete的使用
- C++里 数组new 和delete问题
- C++中关于new和delete的使用
- C++:多维数组的动态分配(new)和释放(delete)
- C++中关于new和delete的使用
- 关于new和delete的编译器的内部实现---来自深度探索C++对象模型
- C++中关于原始数据类型指针变量的new操作以及delete操作
- C++中关于new和delete的使用
- 关于C++ 中的new 和 delete 操作符原理
- C++中new和delete在数组指针和指针数组中的调用
- 关于C++当中new和delete操作符重载的一些感想
- 关于LinuxC/C++中字符指针char * str 与字符数组 char str []的一点小区别
- C++:多维数组的动态分配(new)和释放(delete)
- C++:多维数组的动态分配(new)和释放(delete)
- C++中关于[]静态数组和new分配的动态数组的区别分析
- C++中关于new和delete的使用
- C++中的内存管理——关于new和delete的讨论