函数允许在代码段中构造程序以执行单独的任务。 创建函数的典型情况是当需要在程序中多次执行相同的操作时。
将代码片段标准化为函数具有几个优点 -
函数帮助程序员保持组织。 通常这有助于概念化程序。
函数将一个动作编码在一个地方,以便函数只需要考虑一次并调试一次。
如果代码需要更改,这也减少了修改错误的几率。
函数使整个草图更小和更紧凑,因为代码段被重复使用多次。
它们使得通过使其模块化在其他程序中重用代码变得更容易,并且使用函数通常使得代码更可读。
在Arduino草图或程序中有两个必需的函数,即setup()和loop()。 其他函数必须在这两个函数的括号之外创建。
定义函数的最常用的语法是 -
功能声明
一个函数声明在任何其他函数之外,高于或低于循环函数。
我们可以用两种不同的方式声明函数 -
第一种方法是在循环函数上面写入一个函数原型的函数的一部分,它包括 -
函数返回类型
函数名称
函数参数类型,不需要写参数名称
函数原型后面必须加上分号(;)。
以下示例显示使用第一种方法的函数声明的演示。
例子
int sum_func (int x, int y) // function declaration { int z = 0; z = x+y ; return z; // return the value } void setup () { Statements // group of statements } Void loop () { int result = 0 ; result = Sum_func (5,6) ; // function call }
第二部分,称为函数定义或声明,必须在循环函数下声明,它包括 -
函数返回类型
函数名称
函数参数类型,这里必须添加参数名称
函数体(当函数被调用时,函数内部的语句执行)
以下示例演示使用第二种方法的函数声明。
例子
int sum_func (int , int ) ; // function prototype void setup () { Statements // group of statements } Void loop () { int result = 0 ; result = Sum_func (5,6) ; // function call } int sum_func (int x, int y) // function declaration { int z = 0; z = x+y ; return z; // return the value }
第二种方法只是在循环函数上面声明函数。