精华内容
下载资源
问答
  • 什么是C语言函数
    万次阅读
    2021-05-21 08:53:50

    什么是C语言函数

    int max(a,b)

    int a,b;

    {

    if (a>b) return a;

    else return b;

    }

    第一行说明max函数是一个整型函数,其返回的函数值是一个整数。形参为a,b。第二行说明a,b均为整型量。 a,b 的具体值是由主调函数在调用时传送过来的。在{}中的函数体内, 除形参外没有使用其它变量,因此只有语句而没有变量类型说明。 上边这种定义方法称为“传统格式”。 这种格式不易于编译系统检查,从而会引起一些非常细微而且难于跟踪的错误。ANSI C 的新标准中把对形参的类型说明合并到形参表中,称为“现代格式”。

    例如max函数用现代格式可定义为:

    int max(int a,int b)

    {

    if(a>b) return a;

    else return b;

    }

    现代格式在函数定义和函数说明(后面将要介绍)时, 给出了形式参数及其类型,在编译时易于对它们进行查错, 从而保证了函数说明和定义的一致性。例1.3即采用了这种现代格式。 在max函数体中的return语句是把a(或b)的值作为函数的值返回给主调函数。有返回值函数中至少应有一个return语句。 在C程序中,一个函数的定义可以放在任意位置, 既可放在主函数main之前,也可放在main之后。例如例1.3中定义了一个max 函数,其位置在main之后, 也可以把它放在main之前。

    修改后的程序如下所示。

    int max(int a,int b)

    {

    if(a>b)return a;

    else return b;

    }

    void main()

    {

    int max(int a,int b);

    int x,y,z;

    printf("input two numbers:\n");

    scanf("%d%d",&x,&y);

    z=max(x,y);

    printf("maxmum=%d",z);

    }

    现在我们可以从函数定义、 函数说明及函数调用的角度来分析整个程序,从中进一步了解函数的各种特点。程序的第1行至第5行为max函数定义。进入主函数后,因为准备调用max函数,故先对max函数进行说明(程序第8行)。函数定义和函数说明并不是一回事,在后面还要专门讨论。 可以看出函数说明与函数定义中的函数头部分相同,但是末尾要加分号。程序第12 行为调用max函数,并把x,y中的值传送给max的形参a,b。max函数执行的

    结果 (a或b)将返回给变量z。最后由主函数输出z的值。

    函数调用的一般形式前面已经说过,在程序中是通过对函数的调用来执行函数体的,其过程与其它语言的子程序调用相似。C语言中, 函数调用的一般形式为:

    函数名(实际参数表) 对无参函数调用时则无实际参数表。 实际参数表中的参数可以是常数,变量或其它构造类型数据及表达式。 各实参之间用逗号分隔。'Next of Page在C语言中,可以用以下几种方式调用函数:

    1.函数表达式

    函数作表达式中的一项出现在表达式中,以函数返回值参与表达式的运算。这种方式要求函数是有返回值的。例如: z=max(x,y)是一个赋值表达式,把max的返回值赋予变量z。'Next of Page

    2.函数语句

    函数调用的一般形式加上分号即构成函数语句。例如: printf ("%D",a);scanf ("%d",&b);都是以函数语句的方式调用函数。

    3.函数实参

    函数作为另一个函数调用的实际参数出现。 这种情况是把该函数的返回值作为实参进行传送,因此要求该函数必须是有返回值的。例如: printf("%d",max(x,y)); 即是把max调用的返回值又作为printf函数的实参来使用的。在函数调用中还应该注意的一个问题是求值顺序的问题。 所谓求值顺序是指对实参表中各量是自左至右使用呢,还是自右至左使用。 对此, 各系统的规定不一定相同。在3.1.3节介绍printf 函数时已提

    到过,这里从函数调用的角度再强调一下。 看例5.2程序。

    void main()

    {

    int i=8;

    printf("%d\n%d\n%d\n%d\n",++i,--i,i++,i--);

    }

    如按照从右至左的顺序求值。例5.2的运行结果应为:

    8

    7

    7

    8

    如对printf语句中的++i,--i,i++,i--从左至右求值,结果应为:

    9

    8

    8

    9

    应特别注意的是,无论是从左至右求值, 还是自右至左求值,其输出顺序都是不变的, 即输出顺序总是和实参表中实参的顺序相同。由于Turbo C现定是自右至左求值,所以结果为8,7,7,8。上述问题如还不理解,上机一试就明白了。函数的参数和函数的值

    一、函数的参数

    前面已经介绍过,函数的参数分为形参和实参两种。 在本小节中,进一步介绍形参、实参的特点和两者的关系。 形参出现在函数定义中,在整个函数体内都可以使用, 离开该函数则不能使用。实参出现在主调函数中,进入被调函数后,实参变量也不能使用。 形参和实参的功能是作数据传送。发生函数调用时, 主调函数把实参的值传送给被调函数的形参从而实现主调函数向被调函数的数据传送。

    函数的形参和实参具有以下特点:

    1.形参变量只有在被调用时才分配内存单元,在调用结束时, 即刻释放所分配的内存单元。因此,形参只有在函数内部有效。 函数调用结束返回主调函数后则不能再使用该形参变量。

    2.实参可以是常量、变量、表达式、函数等, 无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值, 以便把这些值传送给形参。 因此应预先用赋值,输入等办法使实参获得确定值。

    3.实参和形参在数量上,类型上,顺序上应严格一致, 否则会发生“类型不匹配”的错误。

    4.函数调用中发生的数据传送是单向的。 即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。 因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。例5.3可以说明这个问题。

    更多相关内容
  • C语言中的函数什么意思

    千次阅读 2021-05-21 04:54:35
    C语言中的函数什么意思简单来说函数就是c语言的模块,一块块的,有较强的独立性,但是可以相互调用。这是c和c++区分的地方,c++面向对象,对象独立完成功能,无需调用。一个c程序就可以是一个函数,里面再包含n个...

    C语言中的函数是什么意思

    简单来说函数就是c语言的模块,一块块的,有较强的独立性,但是可以相互调用。这是c和c++区分的地方,c++面向对象,对象独立完成功能,无需调用。一个c程序就可以是一个函数,里面再包含n个函数。

    【延展】

    C语言中函数和函数体的区别是什么?

    第一、 简单来说函数就是c语言的模块,一块块的,有较强的独立性,但是可以相互调用。一个c程序就可以是一个函数,里面再包含n个函数,有固定输入和输出格式的子程序,函数具有明确的功能、入口调用参数和返回值。

    第二 、函数体是用花括号括起来的若干语句,他们完成了一个函数的具体功能。

    函数体内的前面是定义和说明部分,后面是语句部分。C语言中的函数指的是什么? 详细一点 谢谢

    函数相当于方法,你调用这个函数就是调用这个方法。

    比如说你要吃饭,那么你就要调用吃饭这个函数,也就是用吃饭这个方法来实现你想要的功能。函数非法定义是什么回事?c语言

    不能再一个函数内定义另一函数;

    void main()

    { double fun(int n){ } }

    是错误的。

    自己定义的函数要在main()声明 如

    double fun(int n)——自己定义的函数的声明

    void main()

    { a= fun(b); }

    double fun(int n)

    { }

    如果自己定义的函数在main()前定义c就不需声明。

    double fun(int n)

    { a= fun(b); }

    void main()

    { }c语言中外部函数是什么意思

    有两种理解.(1)库函数是C语言的内部函数或自带函数,外部函数即程序员自定函数.

    (2)凡加写了extern 的函数是外部函数.

    第一种理解好懂:

    C语言的内部函数指的是C语言自带的函数,无论是动态链接的或静态链接的. 这些函数通过C语言的头文件定义了.

    例如, sin(),cos()等数学函数,在math.h中定义了,输入输出函数 printf(),fgetc()在stdio.h中定义了,时间函数表time(),ctime()等在time.h中定义了.还有许多其他内部函数.编程时,只要用#include 写在编程头部,程序中就可调用.

    自定义函数,就是用户自己写的函数.

    第二种凡加写了extern 的函数是外部函数:

    自定义函数可以与程序的main()写在同一个文件中,也可以写在另一个文件中,这时你可能还另写自己的头文件或者写extern....,告诉编译器,main中用到的某某函数是"外部函数".

    例如,main()在a.c中,自定义函数my_func()在a2.c中

    a.c内容:

    #include

    extern float my_func(float a);

    main()

    {

    printf("result=%f\n",my_func(2.0));

    }

    a2.c 内容:

    float my_func(float a)

    {

    return a;

    }

    编译:

    cl -c a.c [得到a.obj]

    cl -c a2.c [得到a2.obj]

    cl a.obj a2.obj [链接成a.exe]

    运行:

    a.exe

    result=2.000000

    extern float my_func() 是外部说明,告诉编译,main()里的my_func是外部函数,要通过链接(.obj)得到.

    如果把my_func写在a.c里:

    #include

    float my_func(float a){

    retun a;

    }

    main()

    {

    printf("result=%f\n",my_func(2.0));

    }

    my_func() 就不是外部函数.

    编译:

    cl a.c [得a.exe]

    运行:

    a.exe

    result=2.000000C语言的关键字和函数有什么区别

    C语言的关键字和函数是完全功能不同的事物,二者之间存在一些限制关系。

    具体描述如下:

    *

    关键字就是已被C语言本身使用,不能作其它用途使用的字。例如:if、for、while等。

    *

    一开始C语言有32个关键字,C99中扩展了5个。

    *

    函数是完成一个局部功能的代码集合,函数由函数名、返回值、参数和函数体等组成。

    可见二者并无相似性,所以谈不上区别,二者之间最大的约束就是关键字不能用作函数名。C语言里的主函数是什么

    一般而言,编写一个能运行在操作系统上的程序,都需要一个主函数。主函数意味着建立一个独立进程,且该进程成为了程序的入口,对其它各函数、方法进行调用,这样整个程序的运行轨迹就像一种栈,有时我们称之为调用栈。主函数既是程序的入口,又是程序的出口,通常我们还可以指定一个返回值再退出,以表明程序最后的结果是什么样的。

    由于主函数肩负着入口和出口的重任,所以最好不要把太多的细节方面的逻辑直接放在主函数内,这样不利于维护和扩展。主函数应该尽量简洁,具体的实现细节应该封装到被调用的子函数里面去。

    主函数不能被重载。

    主函数不能成为内联函数。(写上inline关键字没有任何用处)

    各种语言对比

    ‍c语言中函数var是什么意思

    函数 VAR 假设其参数是样本总体中的一个样本。如果数据为样本总体,则应使用函数 VARP 来计算方差。

    含义:计算基于给定样本的方差。

    语法:

    VAR(number1,number2,...)

    Number1,number2,... 为对应于总体样本的 1 到 30 个参数。

    说明: 逻辑值(TRUE 和 FALSE)和文本将被忽略。如果不能忽略逻辑值和文本,请使用 Vara 工作表函数。初学c语言,函数库和库函数有什么区别,都是什么意思?

    C语言本身只是一个规则:即你写 int a = 1; 就是定义了一个整形值a,初始化为1。

    你写printf()就是调用输出函数。我说这些 的意思是,C语言本身很简朴,但是 为了方便

    C开发者,C编译器厂商按照标准C编写了大量的函数,比如printf() , puts() malloc() 这些都是

    写好了的函数,他们都有专们的功能,如printf是把字符写入到标准输出流,你可以直接使用,而不需要你自己去写。他们每一个都叫库函数,而他们形成的集合就叫函数库。

    库函数 ---->锤子 , 扳手,螺丝刀.......

    函数库 ---->工具箱C语言函数返回值什么意思

    所谓函数返回值是一个函数在运算结束以后向调用它的母函数或者系统反馈一个值,这个值可以是各种变量类型.

    举个简单的例子:

    int add(int a,int b)

    {

    return (a+b);

    }

    int main()

    {

    int res;

    res=add(3,4);

    printf("%d",res);

    return 0;

    }

    在主函数main中调用子函数add,并传递参数3和4过去,add经过运算后得到值7,通过return语句将得到的值返回给调用它的main函数供其使用,而在main中,返回值被用于给res赋值。

    函数返回值就可以理解为解决一个问题以后得到的结论,把这个结论交给别人,就像写在书上成为一个定理,来让别人使用。C语言主函数的函数名是什么意思?

    1,先不用理解太多,只要知道main函数是程序入口地址,也就是说每次写程序都得有一个main(),然后多多练习程序,有些概念时间久了自然会理解。多练习就好,只是每次写程序都要有一个main(),这一点先记住就好。记住,要想学好,就得多练,多写程序,刚开始不会写,可以照抄程序,然后做少量修改,改着改着,你就明白程序怎么写了。

    2,关于数学,英文或是其他学科。

    其实c语言,也只是一种工具,一种和计算机打交道的工具。就想英语,汉语一样。只是英语、汉语都是和人打交道的。而计算机听不懂这些,你得用他能理解的语言来和他沟通,这就是计算机语言。这里边是需要一点英文,但不多,我有一个没学过英文的同学(他主修俄语),照样程序写的很好。数学嘛,这个就得看你的应用方向了。

    参考资料:[iask.sina.com.cn]

    C语言

    按照C99标准的规定,C语言的main函数如下:

    int main(

    void){/*百度百科示例代码*/}//整数类型主函数(无类型)

    或者

    int main(intargc,

    char*argv[]){/*百度百科示例代码*/}//整数类型主函数(整数类型统计参数个数,字符类型*

    数组指针至字符[]) 标签:函数 语言 调用

    展开全文
  • C语言函数库详解(收藏版)感觉还是比较实用的,作为手册需要时可以查一查各种函数的具体定义和使用方法示例,十分方便的。
  • C语言函数

    万次阅读 多人点赞 2019-08-03 19:54:19
    每个C程序都至少有一个函数,即主函数main(),如果程序的任务比较简单,全部的代码都写在main()函数中,但是,在实际开发中,程序的任务往往比较复杂,如果全部的代码都写在main()函数中,main()函数将非常庞大臃肿...

     

    函数的概念

           每个C程序都至少有一个函数,即主函数 main() ,如果程序的任务比较简单,全部的代码都写在main()函数中,但是,在实际开发中,程序的任务往往比较复杂,如果全部的代码都写在main()函数中,main()函数将非常庞大臃肿,结构复杂,代码重复。

           我们可以根据程序的逻辑和任务的分工把代码划分到不同的自定义函数中,main()更关心业务逻辑和处理流程,需要执行具体任务的时候,调用这些自定义的函数就可以了。

           为了方使理解,我们把函数分为两种:一种是库函数,一种是自定义函数。

           库函数是C语言提供的,或系统提供的,实现了某些基本的功能,例如scanf、printf,在程序中可以直接使用。

           自定义函数是程序员为了完成某项任务而编写的函数,目的是为了实现某项的功能或让主程序更简洁。程序员在使用自定义函数之前,必须先声明和定义。

    自定义函数的声明

           自定义函数声明就是告诉编译器函数名称及如何调用函数,包括函数返回值的数据类型、函数名称、参数列表。

           有些程序员也将函数声明说成是函数原型,只是用词不同,意思是一样的。

           C语言中的声明函数的语法如下:

           

           返回值的数据类型return_type:函数执行完任务后,可以返回一个值,return_type是函数返回的值的数据类型,可以是int、char、double或其它自定义的数据类型。有些函数只执行任务而不返回值,在这种情况下,return_type用是关键字 void表示。

           无返回值的函数的声明语法如下:

           

           函数名称function_name:函数名称是标识符,命名规则与变量名称的命名规则相同。

           函数的参数列表parameter list:当函数被调用时,调用者需要向函数的参数传递值。参数列表包括参数的类型、顺序。参数列表是可选的,也就是说,函数可以没有参数。

           无参数的函数的声明语法如下:

     

           

           函数声明示例:

     

           

           声明了一个函数,返回值是int类型,函数名是checksc,函数只有一个参数int height,注意,函数的声明语句最后的分号不能少。

           如果把自定义函数比喻成工具,函数的声明就是这个工具的设计图纸。

    自定义函数的定义

           自定义函数是工具,如果想让这个工具能被使用,光有设计图纸还不行,要把工具制造出来,函数的定义就是这个工具的实体,提供了函数的实际主体,为了实现函数的功能,程序员为需要函数编写代码。

           C语言中的函数定义的语法如下:

           

           函数定义的return_type、function_name和parameter list必须与函数声明一致。

           函数主体包含为了完成任务需要执行语句的集合,放在花括号内。

           示例:

           

           注意,不要在函数定义后面加分号,以下是错误的,初学者容易犯这种错误。

           

     

    自定义函数声明和定义的方式

          如果自定义函数只在调用者程序中使用,可以在调用者程序中声明和定义,声明一般为调用者程序的上部,定义一般在调用者程序的下部,这并不是C语言的规定,而是为了让程序更方便阅读,程序员约定的写法。

           自定义函数在调用者程序中声明和定义的示例(book45.c):

           

           在book45.c中,判断超女身材的函数checksc不是公共的功能,只是选秀程序使用,所以声明和定义在book45.c中。

           如果自定义函数是一个公共的功能模块,例如比较两个数的大小,就可以在其它的头文件中声明(如_public.h),调用者程序需要用#include预处理指令包含该函数声明的头文件。

           如果自定义函数是一个公共的功能模块,就可以在其它的程序文件中定义(如_public.c),编译的时候,要把调用者程序和自定义函数的程序文件一起编译。

          在以下的示例中,函数max在_public.h头文件中声明,在_public.c程序文件中定义,在book46.c程序中被调用。

           自定义函数的头文件(_public.h):

           

           自定义函数的程序文件(_public.c):

           

           调用者程序文件(book46.c)

           

           编译命令如下:

           

           注意:

           1)在book46.c的第6行 ,这里包含头文件是用双引号,不是尖括号<>。一般来说 #include <> 用于包含C语言提供的库函数的头文件,#include ""用于包含程序员自定义的头文件。

           2)编译调用者程序的时候,把调用者程序和自定函数的程序文件一起编译。否则编译的时候会出现以下错误。

     

           

          正确的编译指令应该是gcc -o book46 book46.c _public.c

           3)自定义函数的头文件_public.h和_public.c的命名没有规定,由程序员自己命名,就像变量的命名一样,为了增加程序的可读性,尽可能采用一些有意义的名称。

    库函数

           C语言提供了一些已声明和定义的函数,调用这些函数可以完成一些基本的功能,我们把这些函数称为C 标准函数(C standard library),简称库函数,例如printf、scanf、memset、strcpy等。CC语言的库函数有几百个,常用的不过十分之二三,不需要记住,在以后的章节中我将详细介绍一些常用库函数的使用,用多了就熟了。

           C语言标准库函数的声明的头文件存放在/usr/include目录中,如下:

           <asset.h>     <ctype.h>       <errno.h>     <float.h>    <limits.h>

           <locale.h>    <math.h>     <setjmp.h>   <signal.h>     <stdarg.h>

           <stddef.h>   <stdlib.h>   <stdio.h>      <string.h>      <time.h>

           C语言库函数的定义的文件是/usr/lib/gcc/x86_64-redhat-linux/4.4.4/libgcc.a(不同编译器的版本目录名有所不同),这是一个打包好的静态链接库文件,静态链接库的知识我们以后再介绍。

           我们在用gcc编译程序的时候并没有把libgcc.a包含进来,那是因为gcc编译器缺省会包含它,但是,程序员自定义函数的头文件和程序文件就没有这种待遇,需要手工的包含进来。

    需要包含哪些头文件

           我们在使用库函数的时候,如果不包含它的头文件,编译时会出现警告,如下:

           该包含哪些头文件呢?有两种方法,一是上百度上查资料,二是使用Linux系统提供的帮助,以strcpy函数为例,在命令行下输入man strcpy回车,如下:

           

           man显示了函数的声明的头文件(第5行),函数的参数、使用方法和返回值。

           注意了,如果程序中使用的没有包含它头文件的库函数,编译的时候不一定是警告,也可能是报错,函数无法识别等,这个要看编译器,不同C语言的编译器不一样。

    调用函数的方法

           库函数是系统声明和定义的,是现成的工具。自定义函数是程序员自己声明和定义的,是程序员补充的工具,不管是现成工具的还是补充的工具,都是工具,对使用者来说都一样,没有区别。

           在C语言中,函数的调用非常灵活,可以独占一行语句,也可以当成常量赋值给变量,也可以当成函数的参数。

           如果函数的返回值是void,表示该函数的的任务以完成某项功能为主,一般用单行书写,独占一条语句。

           如果函数的返回值不是void,如果单行书写,表示不关心它的返回值,也可以当成常量用于任何表达式中。

           例如:

           

    函数调用的过程

           当程序调用函数时,程序控制权会转移给被调用的函数。被调用的函数执行函数体的代码,当函数的返回语句被执行时,或到达函数的结束括号时,就把程序控制权交还给调用者程序。

           示例(book47.c)

           

           运行结果

           

     

    函数参数的传递

          关于函数的参数,在很多教程中有很多说法,如“形参”、“实参”、“值传递”、“地址传递”、“引用”等,这些说法把简单的概念复杂化了,大家不必理会。

          函数的参数可以理解为函数的局部变量,参数传递就是调用者程序把变量(或常量)的值复制一份给函数的参数,简单说来就是复制的过程。一旦完成数据的复制,调用者程序的变量和函数的参数就再也没有瓜葛了,所以,在函数调用的过程中,函数的参数的值发生改变并不会影响调用者程序的变量的值。

          我们在调用函数的时候,不关心函数参数的名称,函数参数的名称是函数自己的事情,只在函数内部使用,与调用者无关。

           示例(book48.c)

           

           运行结果

           

    const约束

           const 是 constant 的缩写,意思是“恒定不变的”!它是定义只读变量的关键字,或者说 const 是定义常变量的关键字。用 const 定义常变量的方法很简单,就在通常定义变量时前面加 const 即可,如:

           const  int  a = 10;

           那么用 const 修饰后和未修饰前有什么区别呢?它们不都等于 10 吗?

           用 const 定义的变量的值是不允许改变的,即不允许给它重新赋值,即使是赋相同的值也不可以。所以说它定义的是只读变量。这也就意味着必须在定义的时候就给它赋初值。

           在变量前加const约束,主要用于定义函数的参数,表示该参数在函数中是只读取,不允许改变,如果函数中试图改变它的值,编译的时候就会报错。

           例如:

           

           函数max在声明的时候,参数a和b都加了const约束,在函数中,a=10;和b=20;这两代码试图改变a和b的值。编译的时候如下:

     

           

          编译无法通过。

    应用经验

    1. 如果寻找函数

           在我的课程中,会介绍常用的库函数,但也有漏掉的。查资料是程序员的基本技能。

           例如要查找C语言复制字符串功能的函数,在百度上输入“C语言复制字符串”搜索就可以了,你想查什么就输入什么。

     

           

           然后,打开多几个网页看看,基本上就差不多了。

           注意一个问题,网上的内容太多太杂乱,重点关注百度百科的文章。

           1)测试函数的功能

           要使用函数,只需要关注它需要包含的头文件、函数名、返回值、参数的数据类型和参数的顺序,不必关心参数的名称。

           以strcpy函数为例,函数的声明如下。

           char *strcpy(char *dest, const char *src);

           函数名:strcpy

           返回值:返回dest,一般没用,不理它。

           第一个参数是目标字符串;第二个参数是源字符串,有const约束。

           写代码测试一下:

             char strname[50];

             strcpy(strname,"西施");

             printf("=%s=\n",strname);

           然后,看看输出的结果是不是“=西施=”,用=号夹住输出的内容是为了看清楚有没有其它的字符。

    版权声明

    C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。

    来源:C语言技术网(www.freecplus.net

    作者:码农有道

    如果这篇文章对您有帮助,请点赞支持,或在您的博客中转发我的文章,谢谢!!!

    如果文章有错别字,或者内容有误,或其他的建议或意见,请您留言指正,非常感谢!!!

    展开全文
  • C语言程序是由多个零件组合而成...C语言函数什么在前面的学习中,我们知道在 main( ) 函数中可以通过 printf( ) 函数实现屏幕输出显示的功能,通过 scanf( ) 函数实现读取键盘输入信息的功能。另外,我们还可以使...

    C语言程序是由多个零件组合而成的,而函数就是最主要的组合零件。C语言程序的主体部分就是一个 main( ) 函数,它在 C语言程序中是必不可少的,每一个 C 程序都首先从 main( ) 函数开始执行。

    C语言函数是什么

    在前面的学习中,我们知道在 main( ) 函数中可以通过 printf( ) 函数实现屏幕输出显示的功能,通过 scanf( ) 函数实现读取键盘输入信息的功能。另外,我们还可以使用 abs(x)、sqrt(x) 等函数实现各种数学运算功能。

    这些都是由 C语言提供的库函数,我们在编程过程中直接拿来使用就可以了,不过在使用之前需要在程序开头部分,用#include引入包含这些库函数的头文件。

    此外,我们可以根据需要自己创建各种函数,称为自定义函数。

    而 C语言程序基本上就是用这些函数像搭积木一样搭建起来的(见图 1)。

    aefea0a9fe504edb91d2caf3a0be2a8b.gif

    图 1:像搭积木一样创建 C语言程序

    总结:函数可以理解为能够执行特定功能的“魔法盒”,将多个处理步骤集中在一起并且可能重复使用时可以使用函数。

    C语言函数定义

    函数的定义由多个部分构成(见图 2)。其一般格式如下:

    返回类型 函数名 (形参声明) //函数头

    {

    函数体; //一条或多条 C 语句

    }

    下面的代码定义了一个函数 Max2,其功能是接收两个整数,返回较大的值:

    int Max2 ( int a, int b )

    {

    if(a>b)

    return a;

    else

    return b;

    }

    函数头部分包含函数的返回类型、函数名以及一个或多个形式参数(简称形参)。它指出了该函数的使用方法(函数调用的形式)。

    一般函数都会返回一个值(return 后面跟随的值),这个返回值的数据类型,就是函数的返回类型。也有一些函数没有返回值,只是执行一些具体的操作(比如打印输出等),这些没有返回值的函数在定义时其返回类型为 void 型(见图 2)。

    a0a0f832381ae836122f36a6e28e2af1.gif

    图 2:函数的定义

    函数头部分中用小括号括起来的,是函数需要接收的变量的声明,即形式参数(简称形参)声明,多个形参用逗号分隔。也有不接收任何形参的函数,此时,在小括号中需写入 void。

    函数体部分是用花括号{ }括起来的复合语句。仅在某函数内部使用的变量,应在该函数的函数体中声明和使用。

    return 表示从被调函数返回到主函数继续执行,它后面跟随的就是函数返回值。

    知识点总结

    返回类型、函数名、形参统称为函数头;

    函数由返回类型、函数名、形参和函数体四部分构成;

    形参是函数定义时声明的用于接收数据(值)的特定变量。

    展开全文
  • c语言函数参考手册

    2017-01-26 10:12:40
    C语言函数参考手册(C语言学习路线图)》是一本C语言函数查询参考手册,包含了C语言程序开发中应用的各种函数。全书共20章,按照C语言库函数头文件进行分章,每个头文件为一章,在每一个头文件中以字母的顺序对该...
  • 要写好C语言,漂亮的宏定义是非常重要的。宏定义可以帮助我们防止出错,提高代码的可移植性和可读性等。
  • c语言函数

    千次阅读 2020-11-07 20:31:55
    C语言函数 一、函数的概念 二、函数的结构 三、函数的参数 四、自定义函数 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录C语言函数一、函数的概念二、函数的结构三、函数的参数四、...
  • c语言函数的三种调用方式是什么

    千次阅读 2021-05-22 01:22:33
    函数的三种调用方式:1、函数作为表达式中的一项出现在表达式中,例“z=max(x,y)”;2、函数作为一个单独的语句,例“printf("%d",a)”;3、函数作为调用另一个函数时的实参,例“printf("%d",max(x,y))”。本教程...
  • c语言fun函数什么作用

    千次阅读 2021-06-03 14:20:51
    c语言fun函数的作用是被主函数所调用,来定义一个函数或方法,这样在引用时可以用fun表示,比如【int fun(int x,int y)】。c语言fun函数的作用是:C语言中,fun函数通常被主函数所调用。它是指用fun来定义一个函数(或...
  • c语言函数声明(c语言函数声明格式)

    千次阅读 2021-05-21 07:55:07
    thanks函数声明指函数原型声明,只有函数名,函数类型,参数个数和类型,无函数体。一般放在主函数前。逗号结尾。函数定义,除上述外,去掉结尾逗号,加函数体。可放在.函数定义就是规定函数的格式与功复能。函数...
  • C语言函数大全

    千次阅读 2021-05-19 14:00:24
    C语言函数大全更新时间:2017/2/22 18:37:00浏览量:582手机版A函数名: abort功 能: 异常终止一个进程用 法: void abort(void);程序例:#include #include int main(void){ printf("Calling abort()\n");abort();...
  • c语言函数的三种调用方式是什么

    千次阅读 2021-07-27 00:12:25
    函数的三种调用方式:1、函数作为表达式中的一项出现在表达式中,例“z=max(x,y)”;2、函数作为一个单独的语句,例“printf("%d",a)”;3、函数作为调用另...
  • C语言中的函数分别有什么

    千次阅读 2021-05-20 04:09:22
    C语言函数是一种函数,用来编译C语言,所在库函数为ctype.h,分为分类函数,数学函数,目录函数,进程函数,诊断函数,操作函数等。C语言中的函数在其他编程语言中也称为过程或子程序。要执行任务,我们可以创建函数...
  • c语言函数声明格式是什么

    千次阅读 2021-05-21 07:53:33
    c语言函数声明格式是“函数类型 函数名称(参数列表);”。在函数声明中的参数列表中,不需要给出具体的变量名称,但必须给出每个变量的类型。函数声明,不是说明的格式是“函数定义格式”的第一行,然后加 “;”,即...
  • C语言函数作为函数参数

    万次阅读 多人点赞 2019-09-13 11:35:15
    c,c++中是可以向Python那样将函数作为函数参数的,具体实现方法如下
  • C语言函数参数传递详解

    千次阅读 2021-06-02 11:00:20
    1.值传递和地址传递 (1)值传递:即按“值(如数字10)”传递参数,是将实参变量的值复制一个到临时存储单元中(该存储单元会随着调用的函数运行结束而释放掉),如果在调用过程中改变了形参的值,不会影响实参变量...
  • C语言函数参数为空和void

    千次阅读 2021-05-26 01:51:14
    C语言函数参数的为空和用void标注他们的效果一样吗?#include 2 //int add();3 int add(void);4 int main(void)5 {6 int i;7 i = add(5 ,6);89 printf("%d\n", i);10 return 0;11 }12 int add(a ,b)13 {14 return ...
  • C语言函数返回值详解

    万次阅读 多人点赞 2020-02-24 11:32:28
    函数的返回值是指函数被调用之后,执行函数体中的代码所得到的结果,这个结果通过 return 语句返回。 return 语句的一般形式为: return 表达式;...C语言返回值 1 . 没有返回值的函数为空类型,用...
  • c语言函数由哪几部分组成

    千次阅读 2021-05-24 07:02:29
    c语言函数由哪几部分组成发布时间:2020-07-16 15:46:42来源:亿速云阅读:476作者:Leah这篇文章将为大家详细讲解有关c语言函数由哪几部分组成,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇...
  • C语言函数的定义与使用

    千次阅读 2021-05-22 02:06:45
    C语言函数的定义与使用》由会员分享,可在线阅读,更多相关《C语言函数的定义与使用(5页珍藏版)》请在人人文库网上搜索。1、讲义十三 C语言函数的定义与使用一、函数的定义:1、函数的定义:返回类型 函数名(参数...
  • c语言strcmp函数用法是什么

    千次阅读 2021-05-19 19:47:34
    c语言strcmp函数用法:语法结构为【int strcmp(char *str1, char *str2)】,比较字符串str1和str2是否相同,如果相同则返回0,如果不同,在不同的字符处如果str1的字符大于str2字符,则返回负1。c语言strcmp函数用法...
  • 写在前面:学习的第一门语言是Java,之前对C也了解一点,也只是了解一点,在加上长时间没有接触了,基本就只会一个Hello...函数是一个完成特定工作的独立程序模块,包括库函数和自定义函数两种。例如:scanf(),prin...
  • C语言函数

    千次阅读 2020-12-13 15:52:43
    C语言函数的使用中,函数头的声明可以不写出变量,例如 int fyxwan(int ,int) 但是在函数的定义中,也就是写函数体代码是的开头要把参数写上,例如 int fyxwan(int fyx,int ly)
  • C语言函数定义和函数调用

    千次阅读 2020-04-01 19:05:47
    1、函数的定义 C源程序是由函数组成的。最简单的程序有一个主函数 main(),但实用程序往往由多个函数组成,由 主函数调用其他函数,其他函数也可以互相调用。函数是C源程序的基本模块,程序的许多功能是通过对 函数模块...
  • c语言函数由哪两部分组成

    千次阅读 2021-05-21 09:51:43
    C语言中一个函数一般由两个部分组成一个是函数头,一个是函数体,函数体是编程语言中定义一个函数功能的所有代码组成的整体,函数头是指函数体之前的所有部分,应用于数学、程序设计领域,作用是给出了该函数的...
  • C语言函数的基本知识

    万次阅读 多人点赞 2018-12-02 18:09:04
    什么是函数呢? 1:函数C语言的模块,一块块的,有较强的独立性,可以相互调用,也就是说,你可以在函数A中调用函数B,又可在函数B中调用函数C,不仅如此,你还可以调用函数自身(递归)。 2:函数是完成一个个...
  • c语言strlen函数的使用方法是什么

    千次阅读 2021-05-19 06:16:51
    c语言strlen函数的使用方法是什么发布时间:2020-08-20 11:54:33来源:亿速云阅读:116作者:小新小编给大家分享一下c语言strlen函数的使用方法是什么,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!...
  • C语言函数的参数

    千次阅读 多人点赞 2019-03-21 23:07:27
    一、函数的参数可以是变量、变量指针和变量引用: void funcA(int8_t x) { x=x+1; } 代码说明:该函数的参数属于值传递,在调用该函数时,仅仅只是把实参的值拷贝了一份赋值给了形参x,之后的任何操作都不会影响到...
  • C语言函数的定义和声明

    万次阅读 多人点赞 2019-08-08 14:38:17
    本科学C语言的时候,就对函数的定义和声明的作用很迷糊,刚看到一篇博客,写得非常清楚,贴出来与各位共享! 一、函数的声明 1.在C语言中,函数的定义顺序是有讲究的:默认情况下,只有后面定义的函数才可以调用...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 862,057
精华内容 344,822
关键字:

什么是c语言函数