保健食品批发网站大全:C++内存分配问题,急,在线等,请达人指教

来源:百度文库 编辑:中科新闻网 时间:2024/05/11 01:16:52
char *str=new char[10];
str="hi!";
printf("0x%x\n",str);
printf("%s\n",str);
delete str;
str=new char[5];
str="Hi!";
printf("%x\n",str);
printf("%s\n",str);
toff先生的回答我觉得很有道理,但是我还有几个问题:
1.怎么样才不让他指向一个const的空间呢,2.为什么存放const值的内存无法回收?3.const值存储的方式是static的,那么是不是所有static的内存都无法回收呢?

delete str;
改成
delete []str;

char *str=new char[10]; //分配内存
str="hi!"; //指向一段const的空间
所以不能delete了,
这个非常失败,
已开始分配的内存已经无法回收了

嗯,同意