百度空间 | 百度首页 
 
查看文章
 
动态内存申请
2009-03-01 11:39
//但是用户可以进入一个太大的值,编译系统不能处理它。举例来说,当试图给一个价值1亿多的“数据”的问题,系统不能分配多少内存,我们准备这个案例(错误:不能被分配的内存,总是检查是否一个动态分配内存块是成功的。因此,如果你使用nothrow方法,你都应该随时检查值的指针返回。否则,使用例外的方法,即使你不处理例外。这样,这个项目将终止在这一点上没有造成的意外收获的继续执行代码,即内存块已经分配时,实际上它并不是。
#include<iostream>
#include<new>
using namespace std;
int main()
{
int i,n;
int *p;
cout<<"how many number would you like to type?";
cin>>i;
p=new(nothrow) int [i];
if(p==0)
    cout<<"error:memory could not be allocated";
else
{
    for(n=0;n<i;n++)
    {
    cout<<"enter number:";
    cin>>p[n];
    }
    cout<<"you have entered:";
    for(n=0;n<i;n++)
    cout<<p[n]<<",";
    delete[] p;
}
return 0;
}

类别:Coding | 添加到搜藏 | 浏览() | 评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu