以下内容部分转载,部分原创,作为笔记记录。
return是个好东西
一、第一个作用,也就是他的真实作用
返回值,这个返回值是和函数的类型有关的,函数的类型是什么,他的返回值就是什么
比方主函数int fun()
{}这里就必须有一个return,只有void时可以不用返回值。
功能函数
int fun()
{
return 1;
}
这个时候fun函数的作用就是返回一个int 类型的值,可以直接拿来用比方int a=fun();
这里就相当于int a=1;
二、另外一个作用return后面的语句不会执行,我们可以用它来结束程序
比方找出三个数种最大的一个数
void main
{
int a,b,c;
if(a>b)
if(b>c)
{
return printf("最大值为%d",a);
}
.....
}
在这里if(b>c)
我们就可以直接得出a是最大了,就没必要执行下面的语句了,return治理就起到了终止语句的作用了。
为了方便测试,我在基于对话框程序里加了三个按钮,用来演示一下。
其中按钮程序为
//Button1的按钮程序部分
void CMFCApplication3Dlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
int n = 0;
if (n==0)
{
return;
}
MessageBox(_T("return!"));
}
点击Button1的时候不会有任何事情发生。可知return后的语句MessageBox并没有被实行,return语句结束整个OnBnClickedButton1()函数。
//Button2的按钮程序部分
void fun()
{
int n = 0;
if (n == 0)
{
return;
}
}
void CMFCApplication3Dlg::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
fun();
MessageBox(_T("return!"));
}
点击Button2的时候会有弹出一个MessageBox。
可知return语句只是结束了fun函数,并没有结束OnBnClickedButton2()函数过程。
//Button3的按钮程序部分
int fun1()
{
return 1;
}
void CMFCApplication3Dlg::OnBnClickedButton3()
{
// TODO: 在此添加控件通知处理程序代码
int n = 0;
CString s;
n = fun1();
s.Format(_T("%d"), n);
MessageBox(s);
}
点击Button3的时候会有弹出一个MessageBox。
return还有一些其他的妙用,只能具体用的时候体会。