C/C++动态分配二维数组(在堆上分配二维数组内存)
2009-06-13 17:44
483 查看
问题:
如何动态非配一个二维数组内存,得到一个如char[i][j]数组,其中a,b都是变量。
解决方法:
#include <iostream>
#include <stdlib.h>
int main()
{
int i = 10;
int j = 20;
//C语言可以这样:
char** a = (char**)( malloc( i*sizeof(char*) ) );
for(int count=0; count<i; count++) {
a[count]=(char*)malloc(j*sizeof(char));
}
a[9][19] = 'a';
std::cout<<a[9][19]<<std::endl;
//C++中最好这样
char** b = new char*[i];
for(int count=0; count<i; count++) {
b[count]= new char[j];
}
b[9][19] = 'b';
std::cout<<b[9][19]<<std::endl;
//当然最后要记得释放内存。
}
http://www.tanshuotech.com/pcweb/
如何动态非配一个二维数组内存,得到一个如char[i][j]数组,其中a,b都是变量。
解决方法:
#include <iostream>
#include <stdlib.h>
int main()
{
int i = 10;
int j = 20;
//C语言可以这样:
char** a = (char**)( malloc( i*sizeof(char*) ) );
for(int count=0; count<i; count++) {
a[count]=(char*)malloc(j*sizeof(char));
}
a[9][19] = 'a';
std::cout<<a[9][19]<<std::endl;
//C++中最好这样
char** b = new char*[i];
for(int count=0; count<i; count++) {
b[count]= new char[j];
}
b[9][19] = 'b';
std::cout<<b[9][19]<<std::endl;
//当然最后要记得释放内存。
}
http://www.tanshuotech.com/pcweb/
相关文章推荐
- C/C++动态二维数组的内存分配和释放 .
- c++二维数组内存动态分配与参数传递
- C/C++动态二维数组的内存分配和释放
- C++动态二维数组内存的分配和释放 opencv
- C/C++动态二维数组的内存分配和释放
- 【C++基础学习】二维数组的动态分配及参数传递
- 如何在C/C++中动态分配二维数组(2)
- C/C++动态内存分配之用malloc和指针实现动态数组排序
- C和C++动态内存分配和释放的区别
- 如何在C/C++中动态分配二维数组
- c\c++二维数组动态分配和释放
- C++的动态内存分配
- C/C++动态分配与释放内存的区别详细解析
- C++动态内存分配(堆)
- 如何在C/C++中动态分配二维数组
- C++动态内存分配(堆)
- 如何在C/C++中动态分配二维数组
- C++内存动态分配和引用
- 如何在C/C++中动态分配二维数组
- 百度电面题 C和C++ 语言动态内存分配 的区别