C++ 函数与程序示例

什么是函数 C++?

A function in C++ 指的是一组接受输入、处理输入并返回输出的语句。函数背后的想法是将重复执行的常见任务组合在一起。如果您有不同的输入,则不会再次编写相同的代码。您只需使用一组称为参数的不同数据来调用该函数即可。

每 C++ 程序至少有一个函数,即 main() 函数。您可以将代码划分为不同的函数。这种划分应该使得每个函数都执行特定的任务。

有许多内置函数 C++ 标准库。您可以在程序中调用这些函数。

为什么要使用函数?

使用函数有很多好处。其中包括:

  • 每个函数将相关代码放在一起。这使程序员更容易理解代码。
  • 通过消除代码重复,函数使编程变得更容易。
  • 函数有助于代码重用。您可以在程序的不同部分甚至程序外部调用同一个函数来执行任务。

内置函数

In C++ 库函数是内置的 C++ 函数。要使用这些函数,您只需直接调用它们即可。您不必自己编写函数。

例如1:

#include <iostream>
#include <cmath>
using namespace std;
int main() {
	double num, squareRoot;
	cout << "Enter number: ";
	cin >> num;
	squareRoot = sqrt(num);
	cout << "The square root of " << num << " is: " << squareRoot;
	return 0;
}

输出:

内置函数

以下是代码截图:

内置函数

代码说明:

  1. 在我们的程序中包含iostream头文件以使用其功能。
  2. 包含 cmath 库以使用其函数。我们想使用其中定义的函数 sqrt()。
  3. 在我们的代码中包含 std 命名空间,以便使用它的类而不调用它。
  4. 调用 main() 函数。程序逻辑应添加在此函数主体内。
  5. 声明两个双精度变量,num 和 squareRoot。
  6. 在控制台上打印一些文本。文本要求用户输入一个数字。
  7. 从键盘读取用户输入。输入将成为变量num的值。
  8. 调用库函数 sqrt(),该函数计算数字的平方根。我们将参数 num 传递给该函数,这意味着它将计算 num 的平方根。此函数在 cmath 库中定义。
  9. 在控制台上打印用户输入的数字、其平方根和一些其他文本。
  10. 程序成功完成后必须返回值。
  11. main() 函数体结束。

用户定义函数

C++ 允许程序员定义自己的函数。函数的目的是将相关代码分组。然后为代码赋予一个唯一的标识符,即函数名。

可以从程序的任何其他部分调用/调用该函数。然后它将执行其主体内定义的代码。

例如2:

#include <iostream>
using namespace std;

void sayHello() {
	cout << "Hello!";
}

int main() {

	sayHello();

	return 0;
}

输出:

用户定义函数

以下是代码截图:

用户定义函数

代码说明:

  1. 在我们的程序中包含iostream头文件以使用其功能。
  2. 在我们的代码中包含 std 命名空间,以便使用它的类而不调用它。
  3. 创建一个名为 sayHello() 的用户定义函数。
  4. 当调用 sayHello() 函数时在控制台上打印一些文本。
  5. sayHello() 函数体结束。
  6. 调用 main() 函数。程序逻辑应添加在此函数主体内。
  7. 调用/调用名为 sayHello() 的函数。
  8. 程序成功完成后必须返回值。
  9. main() 函数体结束。

函数声明/原型

如果在 main() 函数之后定义用户定义函数,则 C++ 编译 将返回错误。原因是编译器不知道用户定义函数的详细信息。这些详细信息包括其名称、参数类型及其返回类型。

In C++,函数声明/原型声明了一个没有函数体的函数。这为编译器提供了用户定义函数的详细信息。

函数声明/原型

在声明/原型中,我们包含了返回类型、函数名称和参数类型。参数名称未添加。但是,添加参数名称不会产生错误。

功能定义

函数声明的目的是告诉 C++ 编译器会知道函数名称、返回类型和参数。函数定义会告诉 C++ 编译器关于函数体的信息。

函数定义/原型

句法

return_datatype function_name( parameters) {
   function body 
}

从上面可以看出,一个函数定义有函数头和函数体,下面是参数的解释:

  • return_datatype- 有些函数会返回值。此参数表示返回值的数据类型。有些函数不返回值。在这种情况下,此参数的值变为 void。
  • function_name- 这是函数的名称。函数名称和参数构成函数签名。
  • 参数- 这是函数参数的类型、顺序和数量。有些函数没有参数。
  • 函数体-这些是定义函数将执行的操作的语句。

函数调用

要使函数执行指定任务并返回输出,必须调用该函数。调用函数时,它会执行函数主体中添加的语句。

函数调用

程序通过其名称来调用。如果函数带有参数,则应在调用期间传递其值。如果服务不带参数,则不要在调用期间传递任何值。

传递参数

In C++,参数是函数调用过程中传递给函数的数据。这些值必须初始化为各自的变量。

调用函数时,参数的数量必须匹配。这意味着传递的值必须等于参数的数量。同样,值的类型也必须与参数匹配。如果第一个参数是整数,则传递给它的值必须是整数。

可以为函数参数指定默认值。如果在函数调用期间没有为参数传递值,则将使用默认值。

示例 3:如何编写和调用函数

#include <iostream>
using namespace std;
int addFunc(int, int);
int main() {
	int x, y, sum;
	cout << "Enter two numbers: ";
	cin >> x >> y;
	sum = addFunc(x, y);
	cout <<"The sum of "<<x<< " and " <<y<<" is: "<<sum;
	return 0;
}
int addFunc(int num1, int num2) {
	int addFunc;
	addFunc = num1 + num2;
	return addFunc;
}

输出:

传递参数

以下是代码截图:

传递参数

代码说明:

  1. 在我们的程序中包含iostream头文件以使用其功能。
  2. 在我们的代码中包含 std 命名空间,以便使用它的类而不调用它。
  3. 声明一个名为 addFunc() 的函数,该函数接受两个整数参数。这将创建函数原型。
  4. 调用 main() 函数。程序逻辑应添加在此函数主体内。
  5. 声明三个整数变量,x、y 和 sum。
  6. 在控制台上打印一些文本。文本要求用户输入两个数字。
  7. 从键盘读取用户输入。用户应为变量 x 和 y 输入两个数字,并用空格分隔。
  8. 调用函数 addFunc() 并将参数 x 和 y 传递给它。该函数将对这些参数进行操作并将输出分配给变量 sum。
  9. 将变量 x、y 和 sum 的值与其他文本一起打印在控制台上。
  10. 该函数成功完成后必须返回值。
  11. main() 函数体结束。
  12. 函数定义。我们正在定义函数 addFunc()。我们将在函数主体 { } 中说明该函数将执行的操作。
  13. 声明一个名为 addFunc 的整型变量。
  14. 将参数 num1 和 num2 的值相加,并将结果赋给变量 addFunc。
  15. addFunc() 函数应该返回 addFunc 变量的值。
  16. 函数体结束,即函数定义结束。

总结

  • 函数 C++ 帮助您将相关代码分组为一个。
  • 函数有助于代码重用。
  • 您无需一遍又一遍地编写类似的代码,只需将其分组到一个函数中即可。然后您可以从代码中的任何位置调用该函数。
  • 函数可以是库函数,也可以是用户定义的函数。
  • 库函数是各种内置的函数 C++ 功能.
  • 要使用库函数,只需包含其定义库并调用该函数即可。无需定义该函数。
  • 用户定义函数是你定义的函数 C++ 程序员。
  • 函数声明告诉编译器函数名称、返回类型和参数类型。
  • 函数定义添加函数主体。
  • 如果函数接受参数,则应在函数调用期间传递它们的值。