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

关于char*的内存分配有关问题

2012-03-06 
关于char*的内存分配问题char*mycharmycharNULL这样写对么?如果对一个char*的变量赋值为NULL,需要分配

关于char*的内存分配问题
char*     mychar;
  mychar   =   NULL;
这样写对么?   如果对一个char*的变量赋值为NULL,需要分配内存么?
    如果这样写不对的话,请给出正确的答案,谢谢!!!

[解决办法]
char* mychar;
mychar = NULL;没有分配内存,不用删除,可以指向一个常量区,也可以指向一个char[]的地址(可以不是首地址,只要不溢出)。

char* mychar = NULL;
mychar =new char[];
delete []mychar;
分配了一个内存区域,可以装字符,不用需要删除
剩下的就是:lx6636(水果萝卜) 看看
[解决办法]
char* mychar;
mychar=NULL;
这样写是很正确地但是没有什么意义。
一般给指针赋上NULL空值是这样的时候如:
char* mychar;
mychar=new char;//创建动态空间
.....开始使用开辟的动态空间
delect mychar;//删除动态指针释放内存
mychar=NULL;//在这个时候为了避免自己的误操作,给delect掉的指针赋上NULL,以免在后面编

写的过程中调用它,如果不加NULL这个指针就会变成野指针会有潜在隐患的。

不知道我的回答对你有没有帮助。
欢迎进入QQ群4905857

热点排行
Bad Request.