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

char*p[] 字符指针的数组 如何new出来

2013-08-29 
char*p[]字符指针的数组 怎么new出来?如题,我山寨的做法是int*pnew int[4] char**pp (char**) pfor(in

char*p[] 字符指针的数组 怎么new出来?
如题,
我山寨的做法是 
 int*  p  =  new int[4];
 char**  pp  = (char**) p;
for(int i = 0;i<4;++i )
{
   pp[i] = new char[255];
}


[解决办法]

char* *p = new char*[4];
for (int i = 0; i < 4; i++)
p[i] = new char[255];
return 0;

[解决办法]
int (*pp)[255]=new int [4][255]; 
[解决办法]

 3 // 推荐用malloc, 不要用尽量少用new
  4 int i;
  5 char ** p = (char *) malloc (sizeof(char)* 4);
  6 
  7 for(i = 0 ; i< 4 ; i ++)
  8 {
  9     p[i] = (char *) malloc(sizeof(char)* 255);
 10 }

[解决办法]
引用:

 3 // 推荐用malloc, 不要用尽量少用new
  4 int i;
  5 char ** p = (char *) malloc (sizeof(char)* 4);
  6 
  7 for(i = 0 ; i< 4 ; i ++)
  8 {
  9     p[i] = (char *) malloc(sizeof(char)* 255);
 10 }


为啥少用new?
c++就应该用new和delete
malloc不调用构造函数的
[解决办法]
引用:
Quote: 引用:


 3 // 推荐用malloc, 不要用尽量少用new
  4 int i;
  5 char ** p = (char *) malloc (sizeof(char)* 4);


  6 
  7 for(i = 0 ; i< 4 ; i ++)
  8 {
  9     p[i] = (char *) malloc(sizeof(char)* 255);
 10 }



为啥少用new?
c++就应该用new和delete
malloc不调用构造函数的





如果只是分配空间的,少用new

原因的话,很多,说一个
new只是操作符而已,malloc是库函数,new的实现是调用malloc的,
new只是针对非内部数据结构时候调用构造函数,

所以如果不是分配非内部数据结构的话,还是用malloc效率还是高点!

热点排行