关于C语言中函数的一些认知

什么是函数?

在C语言中,函数又可以被称为 “子程序”,它是一个大程序的某一个部分,由一个或多个语句块构成,负责完成某项特定任务,而且相较于其他代码,其具备相对独立性,可以用它来实现代码的模块化。

函数的分类

1.库函数

诸如printf(打印),strcpy(字符串拷贝)等基础功能函数,在C语言中基础库中提供了一系列的库函数,在使用是仅需使用#include来包含对应的头文件即可(可配合查询工具使用)

2.自定义函数

自定义函数的组成

int/*函数返回值类型*/ fun/*自定义函数的名称*/(int/*参数类型*/ x)
{
    return 0;/*语句项*/
}

如上所示,即为一个自定义函数
通俗易懂,基本无需解释

3.函数的参数

函数的参数分为形式参数和实际参数
实际参数:真实传递给函数的参数
形式参数:指函数名括号后的变量,只有在只有在函数背后调用的时候才会被实例化

需要注意的是:形参实例化之后相当于实参的一份临时拷贝

4.函数的调用

其分为传值调用传址调用

传值调用:函数的形参和实参分别占用不同的内存块,对形参的修改不会影响到实参

传址调用:将函数外部建立的变量的地址传给函数参数,将函数与外部变量建立联系,可以通过在函数内部来修改函数外部变量

5.函数的嵌套调用和链式访问

嵌套调用

指在一个函数里调用另一个函数

#include<stdio.h>

void two()
{
  printf("hhhh\n");
}
void one()
{
   int i = 0;
   for(i=0; i<10; i++)
   {
      two();
   }
}
int main()
{
    one();
    return 0;
}
链式访问

把一个函数的返回值作为另一个函数的参数

#include<stdio.h>
int main ()
{
   printf("%d",printf("%d",printf("%d",43)));
   return 0;
}

6.函数的声明与定义

函数的声明

告诉编译器有一个函数,它的函数名,参数类型,返回值类型分别是什么,与该函数到底存在与否无关,一般放在头文件中,需要满足先声明,后使用。

函数的定义

函数的具体功能实现

7.函数递归

函数调用自身的一种程序编写技巧,会让代码看起来更简洁更美观(当然也更难)
需要满足两个条件
1.存在限制条件,条件满足后不再递归
2.每次递归更接近限制条件

例如:

#include<stdio.h>
void print(int num)
{
  if(num>9)
    print(nunm / 10);
  printf("%d",num % 10);
}
int main()
{
  int num = 12345;
  print(num);
  returen 0;
}

在之后,我想针对函数的递归再另写一篇文章,因为我认为函数的递归实在是简洁明了,美观大气,并且这种类似于递归的思想我也在一些古典乐中见到过,当然这不属于编程的范畴了,算是一点杂谈。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值