C++函数中return语句的使用方法_C 语言

C++中的return语句是函数中一个重要的语句,return语句用于结束当前正在执行的函数,并将控制权返回给调用此函数的函数。

return语句有两种形式
return;
return expression;
1、没有返回值的函数
不带返回值的return语句只能用于返回类型为void的函数,return语句是为了引起函数的强制结束,这种用法类似于循环结构中的break语句的作用。
例子:

复制代码 代码如下:

void swap(int &v1,int &v2)
{
if(v1==v2)
return;
int temp=v2;
v2=v1;
v1=tmp;
}

返回类型为void的函数通常不能使用第二种形式的return语句,便是,它可以返回另一个返回类型同样是void的函数的调用 结果:

复制代码 代码如下:

void do_swap(int &v1,int &v2)
{int temp=v2;
v2=v1;
v1=tmp;
}
void swap(int &v1,int &v2)
{
if(v1==v2)
return false;
return do_swap(v1,v2)
}

2、具有返回值的函数
任何返回类型不是void的函数都必须返回一个值,而且这个返回值的类型必须和函数的返回类型相同,或者能隐式转化为函数的返回类型。

尽管C++不能确保结果的正确性,便能保证函数每一次return都返回适当类型的结果。例如,下面的程序就不能通过编译:

 

时间: 2024-09-28 00:06:50

C++函数中return语句的使用方法_C 语言的相关文章

在C++中自定义宏的简单方法_C 语言

可以使用宏定义没有返回值的"函数".例如:   复制代码 代码如下: #define PrintMax(a, b) \   do \   { \     int x = a, y = b; \     printf("Max: %d\n", x > y ? x : y);\   } while (0) // ... PrintMax(3, 4);     这样的"函数"与真正意义上的函数有本质的区别,因为宏是一个编译前行为,仅仅是编译前对文

C语言中查找字符在字符串中出现的位置的方法_C 语言

C语言strchr()函数:查找某字符在字符串中首次出现的位置 头文件:#include <string.h> strchr() 用来查找某字符在字符串中首次出现的位置,其原型为: char * strchr (const char *str, int c); [参数]str 为要查找的字符串,c 为要查找的字符. strchr() 将会找出 str 字符串中第一次出现的字符 c 的地址,然后将该地址返回. 注意:字符串 str 的结束标志 NUL 也会被纳入检索范围,所以 str 的组后一个

解析Linux下的时间函数:设置以及获取时间的方法_C 语言

一.时间函数 复制代码 代码如下: time_t time(time_t *t);char *asctime(const struct tm *tm);char *asctime_r(const struct tm *tm, char *buf);char *ctime(const time_t *timep);char *ctime_r(const time_t *timep, char *buf);struct tm *gmtime(const time_t *timep); //获取的为英

解析c语言switch中break语句的具体作用_C 语言

问题:break在for循环.while循环等循环流程控制中起的作用是停止执行break后面的语句,跳出本次循环,并跳出该循环控制体:在switch条件选择中,没有了循环控制,break又起什么作用呢? 解决办法:1. switch语句的执行流程是:首先计算switch后面圆括号中表达式的值,然后用此值依次与各个case的常量表达式比较,若圆括号中表达式的值与某个case后面的常量表达式的值相等,就执行此case后面的语句,执行后遇到break语句就退出switch语句,程序流程转向开关语句的下

MFC中exe图标修改的方法_C 语言

复制代码 代码如下: m_hIcon = AfxGetApp()->LoadIcon(IDI_ICON1); SetIcon(m_hIcon, TRUE); // Set big icon  SetIcon(m_hIcon, FALSE); // Set small icon; 修改可运行程序的启动图标通过修改resource.h对应的加载图标的ID为最小来实现; 修改关于对话框的图标可通过覆盖工程中res文件夹下的项目名.ico图标来实现.

使用C语言递归与非递归实现字符串反转函数char *reverse(char *str)的方法_C 语言

代码如下所示: 复制代码 代码如下: // 递归实现字符串反转   char *reverse(char *str)   {    if( !str )    {     return NULL; }       int len = strlen(str);       if( len > 1 )       {           char ctemp =str[0];           str[0] = str[len-1];              str[len-1] = '/0';

python类和函数中使用静态变量的方法

  本文实例讲述了python类和函数中使用静态变量的方法.分享给大家供大家参考.具体分析如下: 在python的类和函数(包括λ方法)中使用静态变量似乎是件不可能[Nothing is impossible]的事, 但总有解决的办法,下面通过实现一个类或函数的累加器来介绍一些较为非主流的方法 方法一.通过类的__init__和__call__方法 ? 1 2 3 4 5 6 7 8 9 10 11 class foo: def __init__(self, n=0): self.n = n d

Lua中break语句的使用方法详解

  这篇文章主要介绍了Lua中break语句的使用方法详解,是Lua入门学习中的基础知识,需要的朋友可以参考下 当循环中遇到break语句,循环立即终止,程序控制继续下一个循环语句后面. 如果您正在使用嵌套循环(即一个循环里面另一个循环),break 语句将停止最内层循环的执行并开始执行的下一行代码的程序后段. 语法 Lua break语句语法如下: 代码如下: break 例子: 代码如下: --[ local variable definition --] a = 10--[ while l

C++程序中的这个函数中return是什么意思

问题描述 C++程序中的这个函数中return是什么意思 int cmp(node a,node b) { return a.w<b.w; } return返回的是什么? 解决方案 返回表达式的值,如果为真就是1(非0),假就是0. 解决方案二: 返回1或0....... 解决方案三: 返回a.w<b.w 的值.a.w 小于b.w就是1,否则是0 解决方案四: 返回表达式的结果,成立就是1,不成立就是0 解决方案五: return a.w<b.w; 相当于 if (a.w < b.