首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C ++ 中的指针数组有关问题

2012-02-27 
C ++ 中的指针数组问题!下面代码编译通过,程序退出是出错!//这样写有问题吗!我要动态数组long *m_plnew l

C ++ 中的指针数组问题!
下面代码编译通过,程序退出是出错!
//这样写有问题吗!我要动态数组
  long *m_pl=new long[];
  m_pl[0]=0;
  m_pl[1]=1;
  m_pl[2]=2;

//但我这样写没有问题,但不好根据实际数组大小分配内存!
  long *m_pl=new long[4];
  m_pl[0]=0;
  m_pl[1]=1;
  m_pl[2]=2;
以上两种写法的区别是什么,那种好?

[解决办法]
你一个定义动态数组是没有分配数组大小啊。

[解决办法]
恩,是这样的。。。

[解决办法]
动态分配的数组大小可以为0,所以这里m_pl其实是一个大小为0的数组。
[解决办法]
动态内存申请要指定大小
你的第一种方式申请没有指定大小,访问m_pl[i]是非法的.

C/C++ code
int nCount = 10;long *m_pl = new long[nCount];for(int i = 0; i < nCount; i++ ){    m_pl[i] = i;}
[解决办法]
动态内存申请要指定大小 否则无法按照需要申请空间

热点排行
Bad Request.