函数分类👏
C语言中函数分为库函数和自定义函数。说到函数并不陌生哈,初中第一次接触函数时杀千刀的不及格,C语言函数定义和数学中的定义有所不同:函数的本质是一段可以重复使用的代码,这段代码被提前编写好了,放到了指定的文件中,使用时直接调取即可(抄自百度)。
我们将 Function 译为“函数”而不是“功能”,是因为C语言中的函数和数学中的函数在使用形式上有些类似,例如:C语言中有 length = strlen,数学中有 y = f(x)。这里不咬文嚼字了,重在实践嘛。
在 C 语言中,函数由一个函数头和一个函数主体组成。下面列出一个函数的所有组成部分:
1.返回类型:一个函数可以返回一个值。return_type 是函数返回的值的数据类型。有些函数执行所需的操作而不返回值,在这种情况下,return_type 是关键字 void。
2.函数名称:这是函数的实际名称。函数名和参数列表一起构成了函数签名。
3.参数:参数就像是占位符。当函数被调用时,您向参数传递一个值,这个值被称为实际参数。参数列表包括函数参数的类型、顺序、数量。参数是可选的,也就是说,函数可能不包含参数。
4.函数主体:函数主体包含一组定义函数执行任务的语句。
库函数👏
说嘛是库函数呢,简单来说就是C语言提供给我们的函数,为啥有这玩意儿?早期C语言是没有printf,scanf函数啥的,只要if 语句for循环等等;也就是每个人会有每个人的一套“printf”,这样效率就巨低。库函数有IO函数(input/output),数学函数,操作函数等等,这里敲一个strcpy(字符串拷贝)函数如下:
凡是库函数都记得引用头文件,这里的<string.h>在很上面所以没放进来,千万别说我是内鬼。
这里给大家安利一个网站,在其他博主那里白嫖的,库函数使用查询,对所有库函数归纳非常系统到位,虽然是全英,但并不影响它的优秀。
函数声明👏
所谓声明,就是告诉编译器我要使用这个函数,你现在没有找到它的定义不要紧,请不要报错,稍后我会把定义补上。下面我引用外文以说明:
自定义函数👏
明白了函数声明,自义定函数就更为重要了,要是库函数能干所有事,那还要程序员干嘛。和库函数一样,有函数名,返回值类型和函数参数,不一样的是DIY,有极大的发挥空间;其基本组成如下:(手打勿喷)
举个栗子:
int Max(int a,int b) { if (a < b) { return b; } else if (a > b) { return a; } else { return 0; } } int main() { int a = 0; int b = 0; scanf("%d,%d", &a, &b); int n = Max(a, b); printf("n = %d", n); return 0; }//定义Max最大值函数