C++ 函数声明
声明函数的语法:
returnType functionName (parameter1, parameter2,...) {
// function body
}
声明函数的例子:
// 函数声明
void greet() {
cout << "Hello World";
}
- 函数的名称是
greet()
- 函数的返回类型是
void
- 空括号表示它没有任何参数
- 函数体写在里面
{}
调用函数
int main() {
// 调用函数
greet();
}
示例:
#include <iostream>
using namespace std;
// 函数声明
void greet() {
cout << "Hello World!";
}
int main() {
// 调用函数
greet();
return 0;
}
结果:
函数参数
可以使用参数(arguments)声明函数。参数是在声明函数时传递的值。
函数参数的例子:
void printNum(int num) {
cout << num;
}
Int变量num是函数参数。
调用函数时将值传递给函数参数。
int main() {
int n = 10;
// 调用函数
// n 作为参数传递给函数
printNum(n);
return 0;
}
结果:
示例2(带参数的函数):
#include <iostream>
using namespace std;
// display a number
void displayNum(int n1, float n2) {
cout << "整数是" << n1 << endl;
cout << "小数是 " << n2 << endl;
}
int main() {
int num1 = 521;
double num2 = 5.21;
// calling the function
displayNum(num1, num2);
return 0;
}
结果:
在上面的程序中,使用了一个函数,它有一个 int 参数和一个 double 参数。然后将 num1 和 num2 作为参数传递。这些值分别由函数参数 n1 和 n2 存储。
返回语句
void displayNumber() {
// code
}
在函数声明中使用了void,意味着该函数不返回任何值。也可以从函数返回一个值,为此需要在函数声明时指定函数的返回类型。然后,return 语句可用于从函数返回值。
示例:
int add (int a, int b) {
return (a + b);
}
上述数据类型是 int 而不是 void。这意味着该函数返回一个 int 值。
代码返回(a + b);返回两个参数的总和作为函数值。
return 语句表示函数已经结束。函数内部 return 之后的任何代码都不会执行。
示例3(整数相加):
#include <iostream>
using namespace std;
// 声明函数
int add(int a, int b) {
return (a + b);
}
int main() {
int sum;
// 调用函数并存储
//返回值的数字求和
sum = add(100, 50);
cout << "100 + 50 = " << sum << endl;
return 0;
}
结果:
函数原型
在C++中,函数声明的代码应该在函数调用之前。但是,如果想在函数调用之后定义一个函数,就需要使用函数原型。
//函数原型
void add(int, int);
int main() {
// 在声明之前调用函数
add(5, 3);
return 0;
}
// 函数定义
void add(int a, int b) {
cout << (a + b);
}
函数原型为:
void add(int, int);
函数原型的语法:
returnType functionName(dataType1, dataType2, ...);
示例4(C++函数原型):
// 在 main() 函数之后使用函数定义
// 函数原型在 main() 之前声明
#include <iostream>
using namespace std;
// 函数原型
int add(int, int);
int main() {
int sum;
// 调用函数并存储
// 返回值的数字求和
sum = add(100, 50);
cout << "100 + 50 = " << sum << endl;
return 0;
}
// 函数定义
int add(int a, int b) {
return (a + b);
}
结果:
C++ 库函数
库函数是 C++ 编程中的内置函数。C++ 中一些常见的库函数有
sqrt()
,
abs()
,
isdigit()
等,为了使用和等数学函数
sqrt()
,
abs()
需要包含头文件
cmath
。
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double number, squareRoot;
number = 36.0;
// sqrt() 是一个计算平方根的库函数
squareRoot = sqrt(number);
cout << "Square root of " << number << " = " << squareRoot;
return 0;
}
结果: