C语言的函数到底是什么?

相信很多小伙伴们在学习C语言时经常听到这样的话:C语言的基本单位是函数,那么函数到底是什么呢?它的结构有是什么呢?都有哪几种类型呢?下面我来告诉大家。

函数简单来说就是能够实现某种功能的代码块。说到底它是由许多行代码组成的,其存在的意义就是为了实现某些具体的功能,它的存在可以使复杂的问题变得简单。

一、函数的组成结构:

函数必须存在的部分是函数头部和函数体。函数头部包括函数名、函数返回值类型、函数参数;函数体包括函数返回值和具体实现功能的代码块。

#include <stdio.h>

//一个主函数(main函数)
//int是函数返回值类型,该函数的返回值是0,所以是整形
//main是函数名
//圆括号内部是函数的参数,如果无参数可以省略或者写void
int main(void)
{
    
    //具体实现功能的地方,用来写代码

    return 0;//函数的返回值
}

1、函数名:函数名是写函数时必不可少的,它在函数声明、定义、调用时都有用到。函数名的命名规则与标识符一样,只能用字母(区分大小写)、数字和下划线组成,且数字不能开头。其中不能包含空格、特殊字符、汉字等。

2、函数类型:这个类型具体是函数返回值的类型。对于有返回值的函数,其类型是返回值类型;没有返回值的函数,其类型就是void。函数类型如果省略不写,则默认是int型。

3、函数参数:如果函数的作用是实现某种特定功能,那么函数参数就是帮助实现这个功能的“组成部分”,在实现功能时是需要用到这些参数的,当然这个参数可有可无,也可以有多个。如果无参数,可以不写或者写void。对于有参数的函数,在写参数时必须对所有参数进行定义。

void的意思是空,写在函数类型那里就是空类型,写在函数参数那里就是空参数。

4、函数体:函数体是实现函数功能的地方,用来书写代码。是花括号开始到花括号结束。

5、函数的返回值:对于一个函数来说,实现其功能后可以返回一个值,这个值就叫做函数的返回值,这个返回值利用return返回,返回的值是什么类型的,则该函数的类型就是什么类型的。当执行到return语句时,该函数就执行结束了,会跳出该函数。如果函数无返回值,则可以不写return,函数类型为void。

注:

空函数就是函数的类型、参数、返回值均为空。其作用是当想用函数实现某个功能时,但是还不知道是什么功能,就先写一个空函数,等到具体了功能后再次填充。

其格式如下:

void 函数名()
{}

二、函数的分类:

任何东西在某些特定情况下都是可以分类的,分类也可以使我们更好地认识它们,当然函数也不例外。

1、库函数和自定义函数:函数可以分为库函数和自定义函数。库函数是由C语言提供的函数,可直接使用,使用之前需要引用包含它的头文件,比如想使用printf函数,就要引用头文件stdio.h。自定义函数是根据想实现的功能自己去定义的函数,按照上面的函数格式就可以自己定义函数了。

2、根据函数有无参数可以分为有参函数和无参函数。有参函数就是使用函数时需要传参进去,无参函数则不需要。

三、函数的声明、定义与调用:

1、函数声明:函数声明就好像是告诉编译器我要使用这个函数,这个函数的类型和参数也要声明,格式如下:

//有返回值和参数的函数的声明
返回值类型 函数名(参数类型1 参数名1, 参数类型2 参数名2,...参数名n 参数n);
//比如下面的形式
int fun(int num1, int num2);


//无返回值或参数可以用void代替
void fun();

//函数声明结尾一定要写分号

注:

函数声明一定要写在主函数前,因为程序从主函数开始而开始到主函数结束而结束,如果函数声明写在主函数后面,那么编译器就不知道存在这个函数声明,可能会报错。

2、函数定义:函数定义就是利用代码具体实现函数功能。

3、函数调用:对于函数来说,仅仅是定义和声明了,但是并没有在主函数中调用的话,还是不会被执行的。因为程序只执行主函数中的内容。调用格式如下:

//函数调用
fun(a, b);
//a和b是两个实参,即主函数中定义的变量或定义在fun函数前的全局变量
//函数调用时不需要写函数类型,但是要写分号

函数只声明和定义,但是不调用,这其实是无意义的。所以自定义函数定义后,一定要调用才有意义。

以上就是我这次分享的内容啦!写的不好,请多担待!

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
C语言中,函数是一段被命名的可执行代码块。函数的使用分为函数定义和函数调用两个步骤。 函数的定义包括函数的返回类型、函数名以及函数的参数列表和函数体。函数的返回类型决定了函数的返回值类型,函数名是用来标识函数的唯一名称,参数列表是函数在调用时所需要传递的参数,函数体是具体的执行代码。函数的定义可以在程序的任意位置,但通常是在主函数之前进行。 函数的调用是指使用函数名加上参数列表的方式来执行函数体中的代码。在函数调用时,需要按照函数定义中的参数列表顺序传递实际参数,这些实际参数会被赋值给函数定义中对应的形式参数。函数调用完成后,会返回一个值,该值可以根据返回类型进行接收或处理。 函数可以返回一个值,也可以不返回任何值。如果函数没有返回值,可以将返回类型设为void。在函数定义中,可以使用return语句来指定函数的返回值,return后面的表达式将会被当作返回值返回给函数调用处。 函数的使用可以提高程序的模块化和可重用性,可以将一段实现某一功能的代码封装成函数,当需要使用该功能时,只需要调用函数即可。同时,函数的使用也能提高代码的可读性和维护性。 总结来说,C语言函数的使用需要包括函数的定义和函数的调用。函数的定义包括返回类型、函数名、参数列表和函数体,函数的调用通过函数名和参数列表来执行函数体中的代码。函数可以有返回值,也可以没有返回值。函数的使用可以提高程序的模块化和可重用性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值