爆肝小白的C语言函数狂想曲

简介: 谈谈对函数的认识

正片开始👀

函数分类👏

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>在很上面所以没放进来,千万别说我是内鬼。

这里给大家安利一个网站,在其他博主那里白嫖的,库函数使用查询​,对所有库函数归纳非常系统到位,虽然是全英,但并不影响它的优秀。

函数声明👏

所谓声明,就是告诉编译器我要使用这个函数,你现在没有找到它的定义不要紧,请不要报错,稍后我会把定义补上。下面我引用外文以说明:

函数声明的格式非常简单,相当于去掉函数定义中的函数体,并在最后加上分号;,如下所示:
dataType functionName( dataType1 param1, dataType2 param2 ... );

也可以不写形参,只写数据类型:
dataType functionName( dataType1, dataType2 ... );

自定义函数👏

明白了函数声明,自义定函数就更为重要了,要是库函数能干所有事,那还要程序员干嘛。和库函数一样,有函数名,返回值类型和函数参数,不一样的是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最大值函数

今天就到此为止吧,溜了家人们。

相关文章
|
9天前
|
程序员 C语言
C语言库函数 — 内存函数(含模拟实现内存函数)
C语言库函数 — 内存函数(含模拟实现内存函数)
18 0
|
20天前
|
编译器 C语言 C++
【C语言】memset()函数(内存块初始化函数)
【C语言】memset()函数(内存块初始化函数)
23 0
|
20天前
|
编译器 C语言 C++
【C语言】memcpy()函数(内存块拷贝函数)
【C语言】memcpy()函数(内存块拷贝函数)
38 0
|
21天前
|
C语言 C++
【C语言】rand()函数(如何生成指定范围随机数)
【C语言】rand()函数(如何生成指定范围随机数)
16 0
|
29天前
|
C语言
在C语言中数组作为函数参数的应用与示例
在C语言中数组作为函数参数的应用与示例
15 0
|
29天前
|
算法 C语言
在C语言中函数的递归调用及应用示例
在C语言中函数的递归调用及应用示例
15 1
|
29天前
|
C语言
在C语言中多维数组名作为函数参数的应用与示例
在C语言中多维数组名作为函数参数的应用与示例
12 0
|
29天前
|
安全 程序员 C语言
探索C语言库函数:字符串拷贝函数strcpy
探索C语言库函数:字符串拷贝函数strcpy
19 0
|
9天前
|
程序员 C语言 开发者
C语言库函数 — 字符串函数(含模拟实现字符串函数)
C语言库函数 — 字符串函数(含模拟实现字符串函数)
35 0
|
16天前
|
存储 C语言
【我爱C语言】详解字符函数isdigit和字符串转换函数(atoi和snprintf实现互相转换字符串)&&三种strlen模拟实现1
【我爱C语言】详解字符函数isdigit和字符串转换函数(atoi和snprintf实现互相转换字符串)&&三种strlen模拟实现