| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 827 人关注过本帖
标题:原谅我。。我真的捏不出来个题目。。。
只看楼主 加入收藏
guoyao333
Rank: 1
等 级:新手上路
帖 子:13
专家分:2
注 册:2012-12-22
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:11 
原谅我。。我真的捏不出来个题目。。。
程序代码:
#include <iostream>
using namespace std;


int *Inti()
{
    int *p;
    if(p=new int (5))
    return p;
    return NULL;
} 

int main()
{
    int *o;
    int *q;
    q=o=Inti();
    cout<<o<<" "<<*o<<endl;
    delete q;
    cout<<o<<" "<<*o<<endl;
    system("


函数里面定义了指针p并通过new申请了内存。
p是个局部变量。
p申请的内存却在main函数里用的不亦乐乎。。
是new的功能还是说是返回指针的功能?
还有new和malloc()有什么区别呢?
还有。不违反作用域么。。
(虽然数据结构书里写的不亦乐乎,实际也可行,但搞不懂啊。。)
2013-03-25 19:50
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:0 
代码是否不完整?
“p申请的内存却在main函数里用的不亦乐乎” 是什么意思?

还有new和malloc()有什么区别呢?
new 是运算符,而malloc 是函数
new 申请内存后会调用对象的构造函数,malloc 只是普通的申请内存

delete q;
     cout<<o<<" "<<*o<<endl
你delete了q了 还访问o?上他们是指向同一快内存的

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2013-03-25 22:11
guoyao333
Rank: 1
等 级:新手上路
帖 子:13
专家分:2
注 册:2012-12-22
收藏
得分:0 
回复 2楼 yuccn
的确少了一点。。少了system("pause")和一个};
这段代码没什么意义。。
就是实验。。
函数里申请的空间可以在main函数里用。
函数里定义的变量却不能。。
是因为返回值么。。
2013-03-25 22:46
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
收藏
得分:20 
new和malloc是在堆上申请的资源
木有作用域限制的

有作用域限制的是栈上的资源

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-03-26 08:10
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9024
专家分:54030
注 册:2011-1-18
收藏
得分:0 
『p指向的内存』和『p本身』是两个不同体

另外,你的代码真垃圾,谁教的?有罪!
2013-03-26 08:16
guoyao333
Rank: 1
等 级:新手上路
帖 子:13
专家分:2
注 册:2012-12-22
收藏
得分:0 
回复 5楼 rjsp
感谢您的批评。。垃圾这点可以批评我。。但我觉得没有必要也没有资格来问候我的老师。。
但是啊。
我认为垃圾这个词还是少用的好。。
我是没关系。。但是万一有人难以接受是很惹人厌的。
2013-03-26 11:15
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9024
专家分:54030
注 册:2011-1-18
收藏
得分:0 
以下是引用guoyao333在2013-3-26 11:15:55的发言:

感谢您的批评。。垃圾这点可以批评我。。但我觉得没有必要也没有资格来问候我的老师。。
但是啊。
我认为垃圾这个词还是少用的好。。
我是没关系。。但是万一有人难以接受是很惹人厌的。

为什么批评你?谁把你教成这样,谁就有罪。
恰如白纸一张,谁在上面乱涂乱画搞废了这张纸,我就批评谁。难道我不批评作恶的人,而去批评白纸本身?

对于“垃圾”这个词,或许你有更精准的描述,但这不是重点。重点是为什么“有人难以接受”?
“垃圾”描述的对象是代码,你可以不同意我对这段代码的定性,但这种定性本身是客观的,和写代码的人无关。
打个比方,有个货郎看到一捆柴火,习惯性地报出了估算总量20斤。
这时候左边跳出来一个人,怒道:“我辛辛苦苦砍柴,把斧子都砍缺口了,你这个货郎怎么可以说它才20斤?”
随后右边又跳出来一个人,怒道:“这柴是我仇家砍的,我和他不共戴天,你这个货郎怎么可以说它有20斤?”
货郎拿起柴火,用秤称了称,哭丧着说“两位大侠,这捆柴真的是20斤,不多不少呀!”

我说代码垃圾,如果真有人“难以接受”,这属于『受迫害狂心理』,是长时间自卑导致的反性格化自负,容不得任何外界批评。得去看心理医生,早期可以治好,我一个同学就是这样治好的。
2013-03-26 12:59
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
收藏
得分:0 
以下是引用rjsp在2013-3-26 12:59:47的发言:


为什么批评你?谁把你教成这样,谁就有罪。
恰如白纸一张,谁在上面乱涂乱画搞废了这张纸,我就批评谁。难道我不批评作恶的人,而去批评白纸本身?

对于“垃圾”这个词,或许你有更精准的描述,但这不是重点。重点是为什么“有人难以接受”?
“垃圾”描述的对象是代码,你可以不同意我对这段代码的定性,但这种定性本身是客观的,和写代码的人无关。
打个比方,有个货郎看到一捆柴火,习惯性地报出了估算总量20斤。
这时候左边跳出来一个人,怒道:“我辛辛苦苦砍柴,把斧子都砍缺口了,你这个货郎怎么可以说它才20斤?”
随后右边又跳出来一个人,怒道:“这柴是我仇家砍的,我和他不共戴天,你这个货郎怎么可以说它有20斤?”
货郎拿起柴火,用秤称了称,哭丧着说“两位大侠,这捆柴真的是20斤,不多不少呀!”

我说代码垃圾,如果真有人“难以接受”,这属于『受迫害狂心理』,是长时间自卑导致的反性格化自负,容不得任何外界批评。得去看心理医生,早期可以治好,我一个同学就是这样治好的。


人才呀...

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-03-26 13:59
guoyao333
Rank: 1
等 级:新手上路
帖 子:13
专家分:2
注 册:2012-12-22
收藏
得分:0 
回复 7楼 rjsp
好吧。。长时间自卑而反性格自负我承认。。但绝对没有到需要去看心理医生的地步。。
既然性格使然。硬是去改变也难以收到成效。而且我现在过得还是挺自在的。
这段是我自己随手打出来的。。作用也仅仅是实验。
俗话说实验出真知。。要问意义真的一点也没有。
只是我的一个小小的疑惑。。
在程序里我绝不会这么瞎搞的。。
谢谢你。
我的确需要保持一下心态。。
很中肯。。嗯。
2013-03-26 21:56
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
老师不一定总是对的
教科书也未必总对(很多童鞋说照书上一个字母都不差的敲得,但是连最基本的编译都无法通过)

一切都已实践为准

DO IT YOURSELF !
2013-03-26 22:01
快速回复:原谅我。。我真的捏不出来个题目。。。
数据加载中...
 
   



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

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