关于return的小问题

fuheng 2008-11-04 11:56:07

#include<iostream>
//
class power{
double x;
int e;
double mul;
public:
power(double val,int exp);
double get_power(){ return mul;}
};

power::power(double val,int exp){
x=val; e=exp; mul=1.0;
if(exp==0) return;
for(;exp>0;exp--) mul=mul*x;
};
using namespace std;
main(){
power pwr(1.5,2);
cout<<pwr.get_power()<<"\n";
system("pause");
}


问一下 在这个程序中 return 没有返回 和return null 还有 exit(1),有什么差别呢?
...全文
71 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
太乙 2008-11-05
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 lunaticbaby 的回复:]
都不知道人家写在哪里,怎么就肯定回答呢?
[/Quote]

有道理,我错了~~~~~~嘿嘿~
鞋提子 2008-11-05
  • 打赏
  • 举报
回复
都不知道人家写在哪里,怎么就肯定回答呢?
太乙 2008-11-05
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 jia_xiaoxin 的回复:]
首先向楼主强调一下
main(){


是一种错误的写法,这种写法很不规范
正确的写法

int main()
{

return 0;
}
因为main的返回值是要被系统调用的,用来判断是否正确返回。


return NULL
在C++中NULL被定义成0
#define NULL 0
当返回的是指针时,代表空指针,其他情况下等价于0;

exit(1)
exit是结束进程,也就是推出应用程序,用0描述正常退出exit(0), 用1描述有问题的退出exit(1)。
[/Quote]

你这main也写得不规范啊~!
jia_xiaoxin 2008-11-05
  • 打赏
  • 举报
回复
首先向楼主强调一下
main(){


是一种错误的写法,这种写法很不规范
正确的写法

int main()
{

return 0;
}
因为main的返回值是要被系统调用的,用来判断是否正确返回。


return NULL
在C++中NULL被定义成0
#define NULL 0
当返回的是指针时,代表空指针,其他情况下等价于0;

exit(1)
exit是结束进程,也就是推出应用程序,用0描述正常退出exit(0), 用1描述有问题的退出exit(1)。





lunarfan 2008-11-05
  • 打赏
  • 举报
回复
#include<iostream>
//
class power{
double x;
int e;
double mul;
public:
power(double val,int exp);
double get_power(){ return mul;}
};

power::power(double val,int exp){
x=val; e=exp; mul=1.0;
if(exp==0) return;//这里的返回到调用它的函数
for(;exp>0;exp--) mul=mul*x;
};
using namespace std;
main(){
power pwr(1.5,2);
cout<<pwr.get_power()<<"\n";
system("pause");
}
return NULL 就是返回0
exit(1)结束程序运行
phisherr 2008-11-05
  • 打赏
  • 举报
回复
return;
表示power::power(double val,int exp)的计算结束了,只是这个函数结束了;
这时mul=1.0;即是正确的结果;
输出是1;



而exit(1)整个程序都结束了;不会有任何的输出了;
太乙 2008-11-05
  • 打赏
  • 举报
回复
而return就会正确释放资源!
太乙 2008-11-05
  • 打赏
  • 举报
回复
lz说的是主函数?

return没有的话,还是返回了嘛,只是不返回值而已

return null只是返回一个null嘛

exit(1);那这就是退出,所有的堆栈资源(包括全局的、静态的对象)都不会被释放,对象不会调用析构函数!
fuheng 2008-11-05
  • 打赏
  • 举报
回复
嗯 谢谢了,我 一直用的devc++ 格式还算规范,问问题的时候没有考虑格式就发了,谢谢大家对细节的提醒!

64,651

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧