| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1862 人关注过本帖
标题:delete之后程序怎么退出了
只看楼主 加入收藏
andyzt406
Rank: 2
等 级:论坛游民
帖 子:43
专家分:37
注 册:2009-11-24
结帖率:0
收藏
已结贴  问题点数:20 回复次数:12 
delete之后程序怎么退出了
#include <iostream>  
#include <string>
using namespace std;

int main()
{
    char *p1="This is a test!";
    char *p=new char[strlen(p1)+1];  
    char *p_start=p;
    while((*(p++) = *(p1++)) != 0)
        ;  
    cout<< p_start<<endl;

    delete [] p;

    return 0;
}
在delete [] p;的时候程序怎么退出了啊,各位解释一下
搜索更多相关主题的帖子: include 
2013-01-16 15:50
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:2 
很简单呀,在 char *p=new char[strlen(p1)+1]; 之后打印一下 p 的值
然后在 delete [] p; 之前再打印一下 p 的值

这个不能算你粗心,只能算是不良编码风格引来的祸害
2013-01-16 16:05
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:2 
是不是要把C++程序写得不像C了才算学会C++?
2013-01-16 16:20
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:2 
以下是引用zklhp在2013-1-16 16:20:02的发言:

是不是要把C++程序写得不像C了才算学会C++?

C对C++的障碍和负面作用,我说过很多次,不真正深入下去,是没有意识的。不信邪的,见过鬼再说吧。

授人以渔,不授人以鱼。
2013-01-16 18:09
fxbszj
Rank: 5Rank: 5
来 自:阿修罗界
等 级:职业侠客
威 望:4
帖 子:163
专家分:331
注 册:2012-10-8
收藏
得分:2 
char*,C++还是老实的用string吧
2013-01-16 18:37
锋了
Rank: 7Rank: 7Rank: 7
来 自:向日葵幼儿园
等 级:黑侠
威 望:2
帖 子:306
专家分:586
注 册:2012-10-27
收藏
得分:2 
delete [] p看着这么别扭啊!哪学的啊
2013-01-16 20:57
zhuanjia0
Rank: 4
等 级:业余侠客
威 望:3
帖 子:86
专家分:232
注 册:2012-1-13
收藏
得分:2 
回复 6楼 锋了
删除数组用的,那代码只要delete p;就行,你的意思是这样对吧?
2013-01-20 20:02
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:2 
以下是引用锋了在2013-1-16 20:57:36的发言:

delete [] p看着这么别扭啊!哪学的啊

一般都这么写。
2013-01-21 17:10
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:0 
以下是引用pangding在2013-1-21 17:10:09的发言:


一般都这么写。

不一定,只是因为大部分人从C来的,习惯难改。
而在C++中delete[]是个关键字,我查了一下ISO/IEC 14882:2003(E),delete []出现了一次,其它都是delete[]
2013-01-22 09:01
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
以下是引用rjsp在2013-1-22 09:01:57的发言:


不一定,只是因为大部分人从C来的,习惯难改。
而在C++中delete[]是个关键字,我查了一下ISO/IEC 14882:2003(E),delete []出现了一次,其它都是delete[]
是哈,我看的时候没注意那个空格。那 delete [] 是什么意思呀?
2013-01-22 09:59
快速回复:delete之后程序怎么退出了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026128 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved