首页 > 其他分享 >C语言中的函数要点(上)

C语言中的函数要点(上)

时间:2022-11-21 22:02:02浏览次数:66  
标签:调用 函数 C语言 include printf 要点 库函数 形式参数

1.什么是函数

在计算机科学中,子程序(英语:Subroutine, procedure, function, routine, method, subprogram, callable unit),是一个大型程序中的某部分代码, 由一个或多个语句块组 成。它负责完成某项特定任务,而且相较于其他代 码,具备相对的独立性。 一般会有输入参数并有返回值,提供对过程的封装和细节的隐藏。这些代码通常被集成为软件库。

2.函数的分类

在C语言中函数主要分为两类,一类为库函数,另一类为自定义函数

2.1库函数

库函数产生原因:为了支持可移植性和提高程序的效率,所以C语言的基础库中提供了一系列类似的库函数,方便程序员 进行软件开发。

推荐查寻库函数的网站:​​https://cplusplus.com/​

C语言常用的库函数有:IO函数,字符串操作函数,字符操作函数,内存操作函数,时间/日期函数 ,数学函数,其他库函数

注意:1.使用库函数,必须包含 #include 对应的头文件。

2.要学会自己通过相关资料与网站查询并学习库函数

2.2自定义函数

自定义函数和库函数一样,有函数名,返回值类型和函数参数。

但是不一样的是这些都是我们自己来设计。

ret_type fun_name(para1, * )
{
statement;//语句项
}
ret_type 返回类型
fun_name 函数名
para1 函数参数

3.函数的参数

3.1函数的形式参数

形式参数是指函数名后括号中的变量,因为形式参数只有在函数被调用的过程中才实例化(分配内 存单元),所以叫形式参数。形式参数当函数调用完成之后就自动销毁了。因此形式参数只在函数中有效。

3.2函数的实际参数

真实传给函数的参数,叫实参。

实参可以是:常量、变量、表达式、函数等。

无论实参是何种类型的量,在进行函数调用时,它们都必须有确定的值,以便把这些值传送给形 参。

4.函数的调用

4.1 传值调用

函数的形参和实参分别占有不同内存块,对形参的修改不会影响实参。

4.2 传址调用

传址调用是把函数外部创建变量的内存地址传递给函数参数的一种调用函数的方式。 这种传参方式可以让函数和函数外边的变量建立起真正的联系,也就是函数内部可以直接操 作函数外部的变量。

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

5.1 嵌套调用

#include <stdio.h>
void new_line()
{
printf("hello,world\n");
}
void three_line()
{
int i = 0;
for(i=0; i<3; i++)
{
new_line();
}
}
int main()
{
three_line();
return 0;
}

​函数可以嵌套调用,但是不能嵌套定义

5.2 链式访问

#include <stdio.h>
#include <string.h>
int main()
{
char arr[20] = "hello";
int ret = strlen(strcat(arr,"bit"));//这里介绍一下strlen函数
printf("%d\n", ret);
return 0;
}
#include <stdio.h>
int main()
{
printf("%d", printf("%d", printf("%d", 43)));
//结果是啥?
//注:printf函数的返回值是打印在屏幕上字符的个数
return 0;
}

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

6.函数的声明与定义

注意:1.函数先声明再使用

2.  .h通常放置函数的声明,.c通常放置函数的实现


个人愚见,望交流学习!! 转载请注明出处

学习是一个需要不断进步不断前进的过程!!希望作者能与读者一起坚持向前!!

标签:调用,函数,C语言,include,printf,要点,库函数,形式参数
From: https://blog.51cto.com/u_15801317/5875327

相关文章

  • 三角函数打印
    之前某个省赛当时玩麻了有1°=π/180弧度180°=π弧度 C++版本圆周函数#definePI3.1415926535sin(x*1.0/180*PI);cos(x*1.0/180*PI);python版本函数......
  • C语言习题整理收录3
    0从键盘任意输入一个整型表示的月份值,用指针数组编程输出该月份的英文表示,若输入的月份值不在1~12之间,则输出“Illegalmonth”。**输入格式要求:"%d"提示信息:“Inputmon......
  • 14:关闭流要点2_with上下文管理_现场还原
    ###with语句(上下文管理器)with关键字(上下文管理器)可以自动管理上下文资源,不论什么原因跳出with块,都能确保文件正确的关闭,并且可以在代码块执行完毕后自动还原进入该......
  • 在PHP中,使用函数define()来定义常量 可设置大小号是否敏感等
    在PHP中,使用函数define()来定义常量。其语法如下:1booldefine(stringname,mixedvalue[,boolcase_insensitive]);说明:define函数有3个参数,第一个参数为常量名称,即标......
  • 20221118-Python-初始函数
    1.函数的定义    2.函数的参数:    3.函数的返回值:    4.可变长度参数与任意参数 ......
  • c语言实现【青蛙跳台阶问题】
    【青蛙跳台阶问题】c语言实现1.问题描述青蛙跳台阶问题是指:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。2.问题分析假设......
  • 【原创】演示判断一个字符串是否为另一字符串的子串的函数的汇编源程序
    ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;功能:演示判断一个字符串是否为另一字符串的子串的函数;作者:黄志斌于广西河池;日 ......
  • C语言中union类型学习
    union指的是C语言的共用体(联合体)aunionisacontainerofoverlappingobject共用体它表示几个变量共用同一个内存位置,在不同的时间保存不同的数据类型和不同长度的......
  • c语言实现【汉诺塔问题】
    【汉诺塔问题】c语言实现1.问题描述汉诺塔问题是指:一块板上固定三个木杆:A、B、C。A赶上套有若干个大小不等的圆盘,按照大的在下、小的在上的顺序排列,要把这些圆盘从A......
  • 【JavaScript 教程】第六章 数组17—flatMap() :对每个元素执行映射函数并将结果展平
    英文 | https://www.javascripttutorial.net/译文|杨小爱在上节,我们学习如何使用 JavaScriptArrayflat()方法来展平数组,错过的小伙伴可以点击文章《​​【JavaScrip......