动态数组1
2016-01-15 09:36
375 查看
#include <iostream> #include <string> using namespace std; int main () { int a[10]; //静态数组,堆栈上创建的, int n; cout << "你想要多大的数组:" << endl; cin >> n; int *p = (int *)malloc(n * sizeof(int));// C语言创建动态数组, if(p!=NULL) { cout << "C语言malloc创建动态数组成功!" << endl; } int *p1 = new int ; // C++用new创建动态数组, if(p1 != NULL) { cout << "C++语言new创建动态数组成功!" << endl; } free(p); //C语言用free释放动态数组, delete[] p1; //C++语言用delete[]释放动态数组, int *p2 = new int[10]; //没有初始化, string *p3 = new string[10];//默认的构造函数初试化, int *p4 = new int[10](); //初始化为0;指针指向动态创建的第一个元素, cout << *(p4 + 3) << endl; // 输出的是0, *p2 = 8; *(p2 + 1) = 7; cout << *(p2 + 1) << endl; // 输出的是7, //动态数组只能初试化为0, for(int* q = p4; q != p4 + 10; ++q) { *q = 11; // 把每一个元素定义成11,就是进行初始化, } for(int* q = p4; q != p4 + 10; ++q) { cout << *q << endl;// 输出的10个11; } cout << "请输入动态数组的大小:" ; size_t m; cin >> m; int *q1 = new int[m]; for(int *q2 = q1; q2 != q1 + m; ++q2) { *q2 = 88; cout << *q2 << endl; // 输出的是m个88, } delete[] p2; delete[] p3; //delete[]就是将其删除掉, delete[] p4; // 静态的数组是在堆栈上创建的,是局部变量, delete[] q1; // delete[]和mew是一起出现的,忘记delete就会产生内存泄露, return 0; }
相关文章推荐
- 里德九步审讯法 z
- 移动web页面字体大小二
- Android传递Bitmap对象在两个Activity之间
- 23种java设计模式例子汇总
- Best Time to Buy and Sell Stock III
- JavaScript回顾--13_dom简介
- SpringMVC中用@ParamVariable传递的参数包含斜杠(/)时,匹配不了报404错误的解决方案
- css中数值计算
- 蛇
- PHP连接SQL Server(sqlsrv)
- 数据存储之第三方FMDB优化
- Eclipse常用快捷键
- 程序员常去的14个顶级开发社区
- Android入门- 关于Activity下的onCreate方法的参数详解
- Git(4)分支
- Java Web学习总结(1)——JavaWeb开发入门
- Java Web学习总结(1)——JavaWeb开发入门
- 【HDU】 3460 Ancient Printer
- Java Web学习总结(1)——JavaWeb开发入门
- Linux---Samba安装