动态分配二元数组

原创 2012年03月21日 10:37:09

以前,碰到二元数组和指针有点混,现在做下总结:

int a[][2]={3,2,3,4,5,6};
int** ap;

ap=(int**)a;

编译器能通过;

ap也确实和a的值是一样的,也就是说指向的地址是同一个。

主要问题在于

地址如0X0012ff5c这里面存的值是3(数组首元素);

但是在二元数组指针这个3代表的还是一个地址(操作系统保护的地址);

int   **A;
A=new   int*   [N];
for(int   i=0;i <N;i++)
      A[i]=new   int   [N];
A[0][0]=122334; 
这种方法可能是唯一简单的动态分配二元数组的方法了;

这里注意的是浪费了一个一维指针数组;但是没办法,因为二元数组其实本质就是一元数组来存的,而指针如果要一致的话应该也是定义成一维指针,但是这个时候编译器确通过不了

换句话说是编译器的设计者,当时就没想过动态分配二元数组问题,把这个问题留给程序员来做。

int a[][2]={3,2,3,4,5,6};
int* ap;
ap=(int*)a;
std::cout<<a[1][1];(编译器能够解释这种现象)
std::cout<<ap[1][1];(编译器简单认为这种语法是错的)

如果谁要更好的方法告诉我啊!!!

如何动态分配二、三维数组

c和c++分别实现动态分配二、三维数组(转)来自:http://hi.baidu.com/jkxtu1984/blog/item/49e916234e557142ad34deaa.html2008-1...
  • allen_1986
  • allen_1986
  • 2011年04月27日 15:28
  • 2613

malloc函数动态分配数组长度

malloc函数动态分配内存
  • u013493841
  • u013493841
  • 2016年08月20日 11:39
  • 2016

C++ Code:动态分配数组内存的六种方法

问题:         如何快速给数组分配自定义长度的内存,方法有哪些?         本博客提供六种方法介绍,包含各种常用用法,且代码片亲自 编写-注解-编译-通过,对读者负责。 阐述:     ...
  • Errors_In_Life
  • Errors_In_Life
  • 2017年12月25日 10:30
  • 299

Java 动态分配数组长度

int[] ary={1,1,1//...}; ary=Arrays.copyOf(ary,ary.length+1); ary[ary.length-1]=?//......你需要添加的值...
  • Shan_mei
  • Shan_mei
  • 2014年02月26日 17:42
  • 1829

c++动态分配二维/三维数组的内存

转自http://blog.csdn.net/boylinux/article/details/7783871 本文主要目的是用c和c++分别实现动态分配二、三维数组。一般而言,在C中用malloc...
  • a573233077
  • a573233077
  • 2016年01月13日 16:17
  • 1042

C#动态分配数组大小函数

public static Array Redim(Array origArray,Int32 desiredsize) {  //确定每个元素类型   Type t=origArray.GetTyp...
  • okyzx
  • okyzx
  • 2005年08月19日 09:10
  • 1354

new 动态分配数组空间

  (一)定义一个整数              int *p =new int;        int *p =new int(4); //赋初值4   (二)定义一个一维数组           ...
  • shuilan0066
  • shuilan0066
  • 2008年11月17日 16:13
  • 6378

数组的动态分配

一、一维数组的动态分配一维数组动态分配形式如下:int n=2; int *a = new int[n]; //动态分配的数组a存放在内存中的堆中 //使用完后要手动释放内存,否则会内存泄漏 del...
  • na_beginning
  • na_beginning
  • 2017年05月07日 22:35
  • 145

动态分配的数组

新的操作返回的变量被分配了地址。可以将该地址存储在一个指针,指针解引用,然后可以访问变量。 1 2 int *pnValue = new int; // dynamically allocate a...
  • sssdffa
  • sssdffa
  • 2014年08月06日 11:06
  • 211

初始化动态分配的数组

动态分配数组时,如果数组元素具有类类型,
  • chenzhen1213
  • chenzhen1213
  • 2014年11月25日 15:36
  • 1170
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:动态分配二元数组
举报原因:
原因补充:

(最多只允许输入30个字)