函数式编程 - 函数类型

函数有两种类型 −

  • 预定义函数
  • 用户定义的函数

在本章中,我们将详细讨论函数。

预定义函数

这些是内置于语言中用于执行操作的函数,并存储在标准函数库中。

例如 − C++中的"Strcat"和Haskell中的"concat"用于附加两个字符串,C++中的"strlen"和Python中的"len"用于计算字符串长度。

C++ 中打印字符串长度的程序

下面的程序展示了如何使用 C++ 打印字符串的长度 −

#include <iostream> 
#include <string.h> 
#include <stdio.h> 
using namespace std;  

int main() {     
   char str[20] = "Hello World"; 
   int len; 
   len = strlen(str); 
   cout<<"String length is: "<<len; 
   return 0; 
} 

它将产生以下输出 −

String length is: 11

Python 中打印字符串长度的程序

下面的程序展示了如何使用Python(一种函数式编程语言)打印字符串的长度 −

str = "Hello World"; 
print("String length is: ", len(str)) 

它将产生以下输出 −

('String length is: ', 11)

用户定义函数

用户定义的函数是由用户定义的,用于执行特定的任务。 有四种不同的模式来定义函数 −

  • 无参数且无返回值的函数
  • 不带参数但有返回值的函数
  • 有参数但无返回值的函数
  • 带有参数和返回值的函数

无参数且无返回值的函数

下面的程序展示了如何在 C++ 中定义一个没有参数且没有返回值的函数

#include <iostream> 
using namespace std; 

void function1() { 
   cout <<"Hello World"; 
}  
int main() { 
   function1(); 
   return 0; 
} 

它将产生以下输出 −

Hello World 

以下程序展示了如何在 Python 中定义类似的函数(无参数且无返回值) −

def function1():    
   print ("Hello World") 
    
function1() 

它将产生以下输出 −

Hello World 

不带参数但有返回值的函数

下面的程序展示了如何在 C++ 中定义一个不带参数但有返回值的函数

#include <iostream> 
using namespace std; 
string function1() { 
   return("Hello World"); 
}  

int main() { 
   cout<<function1(); 
   return 0; 
}

它将产生以下输出 −

Hello World 

以下程序展示了如何在 Python 中定义类似的函数(不带参数,但有返回值) −

def function1(): 
   return "Hello World" 
res = function1() 
print(res) 

它将产生以下输出 −

Hello World 

有参数但无返回值的函数

以下程序展示了如何在 C++ 中定义带参数但不带返回值的函数

#include <iostream> 
using namespace std; 
void function1(int x, int y) {    
   int c; 
   c = x+y;  
   cout<<"Sum is: "<<c; 
}  

int main() { 
   function1(4,5); 
   return 0; 
}

它将产生以下输出 −

Sum is: 9 

以下程序展示了如何在 Python 中定义类似的函数 −

def function1(x,y): 
   c = x + y 
   print("Sum is:",c) 
function1(4,5)

它将产生以下输出 −

('Sum is:', 9)

带有参数和返回值的函数

下面的程序展示了如何在 C++ 中定义一个不带参数但有返回值的函数 −

#include <iostream> 
using namespace std; 
int function1(int x, int y) {    
   int c; 
   c = x + y;  
   return c;    
} 

int main() {  
   int res; 
   res = function1(4,5); 
   cout<<"Sum is: "<<res; 
   return 0; 
}

它将产生以下输出 −

Sum is: 9 

以下程序展示了如何在 Python 中定义类似的函数(带有参数和返回值) −

def function1(x,y): 
   c = x + y 
   return c  

res = function1(4,5) 
print("Sum is ",res) 

它将产生以下输出 −

('Sum is ', 9)