【嵌入式C语言】六

7.6continue跳转语句

8.1函数的语法格式

函数的语法格式:

返回值类型 函数名(数据类型 参数1,数据类型 参数2,...)

{

函数体

}

函数的两种存在形式

  • 库函数:
    int main(void)
    {
    int32_t res = 0;

    res = Sum(1,100);
    prinf("sum of 1~100 is %d.\n",res);
    return 0;
    }

  • printf是C语言的 标准库函数,除了标准库以外,还有很多三方开源库,比如cjson、单片机厂商提供的hal库等等

  • 这些库函数在使用时,需要包含对应的头文件,比如使用printf,需要#Include<stdio.h>

  • 自定义函数:

  • 比如我们前面自定义实现的int32_t Sum(int32_t begin,int32_t end)函数

函数的返回值

1、函数只能通过return语句返回主调函数。return语句的一般形式为:

return 表达式

return 表达式的结果类型和函数定义中的返回值类型应保持一致

2.函数如果没有返回值,需要使用void关键字修饰,表示空的意思

8.2return跳转语句

在这个函数中执行的是跳出整个函数

8.3参数的数值传递本质

如果函数有参数,在调用它时,必须传递正确数量和类型的参数

在调用函数时,传递给参数的可以是以下几种形式:

1、常数值:sum(1,100)

2、变量:sum(a,b)

3、函数的返回值:sum(sum(1,100),100)

4、表达式:sum(1+2,100)

如果函数没有参数,在定义它时,使用void进行修饰:

当调用函数时,begin=a,end=b,但是在物理空间上没有任何关系

为什么调用函数后,没有将a和b的值互换

因为调用函数的时候传递的是数值,临时变量x和y 的值进行了互换

相关推荐
IT=>小脑虎20 小时前
C++零基础衔接进阶知识点【详解版】
开发语言·c++·学习
Felven20 小时前
A. Helmets in Night Light
c语言
nbsaas-boot21 小时前
Go vs Java 的三阶段切换路线图
java·开发语言·golang
码农小韩21 小时前
基于Linux的C++学习——指针
linux·开发语言·c++·学习·算法
微露清风21 小时前
系统性学习C++-第十九讲-unordered_map 和 unordered_set 的使用
开发语言·c++·学习
BBBBBAAAAAi21 小时前
Claude Code安装记录
开发语言·前端·javascript
毕设源码-钟学长21 小时前
【开题答辩全过程】以 基于Java的慕课点评网站为例,包含答辩的问题和答案
java·开发语言
maozexijr21 小时前
Rabbit MQ中@Exchange(durable = “true“) 和 @Queue(durable = “true“) 有什么区别
开发语言·后端·ruby
深圳佛手21 小时前
使用java,怎么样高效地读取一个大文件(10g以上)?
java·开发语言
xiaolyuh12321 小时前
【XXL-JOB】 GLUE模式 底层实现原理
java·开发语言·前端·python·xxl-job