c语言return(c语言中return的作用简单举例)(1)

前言

本文主要介绍的是C语言return,return是函数返回值,本文来聊一聊C语言函数中return的一些使用技巧,分享给大家。希望对于广大读者学习C语言有一些帮助。

return是什么?

return其英文含义就是返回,用在函数中,退出当前函数.这个想必都知道,分两种情况:

NO.1 函数不带返回值

c语言return(c语言中return的作用简单举例)(2)

NO.2 函数带返回值

c语言return(c语言中return的作用简单举例)(3)

对于带返回值函数返回,其语法为 return 表达式;返回值可以是一些几种情况:

  1. 一个常数。
  2. 一个变量,普通变量和指针变量,结构体变量皆可。
  3. 计算式,例如三目表达式是,求和表达式等。
  4. 调用函数,例如函数递归。
  5. 变量的地址

ps:返回值的类型须与函数返回值类型一致,如不一致,编译器会自动做类型转换,这里容易出现类型转换的错误.

return 运作机制

首先需要了解函数调用是如何工作的。当调用一个函数时,会发生两件事:

  1. 当前函数的执行暂停。
  2. 调用的函数执行。

这就是所谓的的控制权转移。当调用一个函数时,程序的控制从调用函数转移到被调用函数。return语句将控制权返回到前一个调用它的函数。该函数将从暂停的地方继续执行。关于函数栈的解释可以参见号内文章:<<C语言函数的调用原理不理解?深入浅出通俗易懂,一文读懂函数栈>>

return易错情况

warning C4715: “gameOver”: 不是所有的控件路径都返回值,这个是新手常见问题。例如如下代码,在判断游戏状态的时候,写一个查找返回的函数,很多新手容易忽略未找到的情况。

c语言return(c语言中return的作用简单举例)(4)

总结一下,因为容易忽略,其实也是初学者可能不太注意的一些地方,所以在此总结一下:

  1. 不带返回值的函数,可不加return语句
  2. 带返回值的函数,注意返回值的类型与函数返回值类型一致
  3. void函数,return更适合做一些防御性编程,用来提早结束函数的