📅  最后修改于: 2020-12-27 03:15:56             🧑  作者: Mango
这些功能允许程序员将特定的代码划分为多个部分,每个部分执行特定的任务。创建功能是为了在程序中多次执行任务。
该函数是一种过程,它返回从中调用代码的区域。
例如,要在代码中多次重复执行任务,我们可以在每次执行任务时使用同一组语句。
让我们讨论一下在编程中使用函数的一些优点,下面列出了这些优点:
Arduino具有两个常用功能setup()和loop(),它们会在后台自动调用。要执行的代码写在这些函数中的花括号内。
void setup() -它包括代码的初始部分,该部分仅执行一次。它称为准备块。
void loop() -它包含重复执行的语句。这称为执行块。
但是有时候,我们需要编写自己的函数。
让我们开始编写函数。
声明函数的方法如下:
我们需要一个函数的返回类型。例如,我们可以将函数的返回值存储在变量中。
我们可以使用任何数据类型作为返回类型,例如float,char等。
它由为函数指定的名称组成。它代表函数的真实主体。
它包括传递给函数的参数。参数定义为特殊变量,用于将数据传递给函数。
该函数后面必须加上括号()和分号;
传递给函数的实际数据称为参数。
让我们通过一些例子来理解。
考虑下图:
考虑下面的代码:
void setup()
{
Serial.begin(9600);
}
void loop() {
int a = 5; // initialization of values to the variables a and b
int b = 4;
int c;
c = myAddfunction(a, b); // c will now contains the value 9
Serial.println(c); // to print the resulted value
delay(1000); // time delay of 1 second or 1000 milliseconds
}
int myAddfunction(int i, int j)
{
int sum;
sum = i + j;
return sum;
}
同样,我们可以使用以上概念执行算术运算。
在这里,我们将创建一个确定数字是偶数还是奇数的函数。
考虑下面的代码。
int a= 0;
int b;
void setup()
{
Serial.begin(9600);
}
void loop()
{
b = Evenfunction(a); // we can store the function return value in variable b
Serial.print(a);
Serial.print(" : "); // to separate even or odd text
if (b==1)
{
Serial.println( " Number is even");
}
else
{
Serial.println("Number is odd");
}
a++; // the function will increment and will again run
delay(1000);
}
int Evenfunction(int d)
{
if (d% 2==0)
{
return 1;
}
else
{
return 0;
}
}
输出:
输出如下所示:
等等…