Arduino 简明教程

Arduino - Functions

函数允许对代码段进行结构化,针对各个任务。创建函数的典型情况是,当程序中需要多次执行相同操作时。

将代码片段标准化成函数具有多个优势 −

  1. 函数帮助程序员保持井井有条。这常常有助于概念化程序。

  2. 函数将一个操作编码在一个地方,这样就只需要考虑和调试一次函数。

  3. 如果需要更改代码,还可以减少修改错误的机会。

  4. 函数可以多次复用部分代码,使整个草图更小、更紧凑。

  5. 通过模块化更容易在其他程序中复用代码,并且使用函数可以常常提高代码可读性。

Arduino 草图或程序中的两个必需函数是:setup() 和 loop()。其他函数必须在两个函数的括号之外创建。

定义函数最常见的语法是 −

function

Function Declaration

可以在任何其他函数外部声明函数,高于或低于循环函数。

我们可以通过两种不同的方式声明函数 −

第一种方法是在循环函数的上方写出名为 a function prototype 的函数部分,其包括 −

  1. Function return type

  2. Function name

  3. 函数参数类型,无需写出参数名称

函数原型后必须跟分号 ( ; )。

下面的示例演示如何使用第一种方法进行函数声明。

Example

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
}

第二部分称为函数定义或声明,必须在循环函数的下方声明,其包括 −

  1. Function return type

  2. Function name

  3. 函数参数类型,这里必须添加参数名称

  4. 函数体(当函数被调用时执行的函数内的语句)

下面的示例演示如何使用第二种方法声明函数。

Example

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
}

第二种方法只是在循环函数的上方声明函数。