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

关于动态数组有关问题

2012-02-20 
关于动态数组问题?c++里面怎样可以实现2维动态数组的分配和释放?[解决办法]晕!还是二维的!应该可以吧![解

关于动态数组问题?
c++   里面怎样可以实现2维动态数组的分配和释放?

[解决办法]
晕!还是二维的!
应该可以吧!


[解决办法]
自己实现
要不用boost
[解决办法]
int *p=new int[3][4];
delete []p;
应该是可以的吧,因为在书里没见过还有delete[][]p这种形式的,:P
[解决办法]
这是我昨晚帮同事验证程序时做的试验,可以参考一下,C++改成new-delete就好了
#include <stdio.h>
#include <malloc.h>

void GetPointer(char **szChar)
{
int i = 0;
char *p = NULL;
for ( i = 0; i < 256; i++ )
{
p = (char*) malloc(sizeof(char) * 245);
sprintf(p, "new %d ", i);
szChar[i] = p;
}
}

void main()
{
char *szChar[256];
int i;
GetPointer(szChar);
for ( i = 0; i < 256; i++ )
{
printf( "index %d, content: %s\n ", i, szChar[i]);
free(szChar[i]);
}
}
我用空格代替了TAB,看看代码是否有缩进,呵呵
[解决办法]
简单写一个
int row=10;
int col=5;
int *p= new int [row*col];
int **pp= new int*[row];
for(int i=0; i <row; i++)
pp[i]=(p+i*row);
/// 进行操作
delete p;
delete pp;

热点排行