选择显示字体大小

c语言入门之函数(1)

   概述

   在第一章中已经介绍过,c源程序是由函数组成的。 虽然在前面各章的程序中都只有一个主函数main(), 但实用程序往往由多个函数组成。函数是c源程序的基本模块, 通过对函数模块的调用实现特定的功能。c语言中的函数相当于其它高级语言的子程序。 c语言不仅提供了极为丰富的库函数(如turbo c,ms c 都提供了三百多个库函数),还允许用户建立自己定义的函数。用户可把自己的算法编成一个个相对独立的函数模块,然后用调用的方法来使用函数。



   可以说c程序的全部工作都是由各式各样的函数完成的, 所以也把c语言称为函数式语言。 由于采用了函数模块式的结构, c语言易于实现结构化程序设计。使程序的层次结构清晰,便于程序的编写、阅读、调试。

   在c语言中可从不同的角度对函数分类。

   1. 从函数定义的角度看,函数可分为库函数和用户定义函数两种。

   (1)库函数

   由c系统提供,用户无须定义, 也不必在程序中作类型说明,只需在程序前包含有该函数原型的头文件即可在程序中直接调用。在前面各章的例题中反复用到printf 、 scanf 、 getchar 、putchar、gets、puts、strcat等函数均属此类。

   (2)用户定义函数

   由用户按需要写的函数。对于用户自定义函数, 不仅要在程序中定义函数本身, 而且在主调函数模块中还必须对该被调函数进行类型说明,然后才能使用。

   2. c语言的函数兼有其它语言中的函数和过程两种功能,从这个角度看,又可把函数分为有返回值函数和无返回值函数两种。

   (1)有返回值函数

   此类函数被调用执行完后将向调用者返回一个执行结果, 称为函数返回值。如数学函数即属于此类函数。 由用户定义的这种要返回函数值的函数,必须在函数定义和函数说明中明确返回值的类型。

   (2)无返回值函数

   此类函数用于完成某项特定的处理任务, 执行完成后不向调用者返回函数值。这类函数类似于其它语言的过程。 由于函数无须返回值,用户在定义此类函数时可指定它的返回为“空类型”, 空类型的说明符为“void”。

   3. 从主调函数和被调函数之间数据传送的角度看又可分为无参函数和有参函数两种。

   (1)无参函数

   函数定义、函数说明及函数调用中均不带参数。 主调函数和被调函数之间不进行参数传送。 此类函数通常用来完成一组指定的功能,可以返回或不返回函数值。

   (2)有参函数

   也称为带参函数。在函数定义及函数说明时都有参数, 称为形式参数(简称为形参)。在函数调用时也必须给出参数, 称为实际参数(简称为实参)。 进行函数调用时,主调函数将把实参的值传送给形参,供被调函数使用。

   4. c语言提供了极为丰富的库函数, 这些库函数又可从功能角度作以下分类。

   (1)字符类型分类函数

   用于对字符按ascii码分类:字母,数字,控制字符,分隔符,大小写字母等。

   (2)转换函数

   用于字符或字符串的转换;在字符量和各类数字量 (整型, 实型等)之间进行转换;在大、小写之间进行转换。

   (3)目录路径函数

   用于文件目录和路径操作。

   (4)诊断函数

   用于内部错误检测。

   (5)图形函数

   用于屏幕管理和各种图形功能。

   (6)输入输出函数

   用于完成输入输出功能。

   (7)接口函数

   用于与dos,bios和硬件的接口。

   (8)字符串函数

   用于字符串操作和处理。

   (9)内存管理函数

   用于内存管理。

   (10)数学函数

   用于数学函数计算。

   (11)日期和时间函数

   用于日期,时间转换操作。

   (12)进程控制函数

   用于进程管理和控制。

   (13)其它函数

   用于其它各种功能。

   以上各类函数不仅数量多,而且有的还需要硬件知识才会使用,因此要想全部掌握则需要一个较长的学习过程。 应首先掌握一些最基本、 最常用的函数,再逐步深入。由于篇幅关系,本书只介绍了很少一部分库函数, 其余部分读者可根据需要查阅有关手册。

   还应该指出的是,在c语言中,所有的函数定义,包括主函数main在内,都是平行的。也就是说,在一个函数的函数体内, 不能再定义另一个函数, 即不能嵌套定义。但是函数之间允许相互调用,也允许嵌套调用。习惯上把调用者称为主调函数。 函数还可以自己调用自己,称为递归调用。main 函数是主函数,它可以调用其它函数,而不允许被其它函数调用。 因此,c程序的执行总是从main函数开始, 完成对其它函数的调用后再返回到main函数,最后由main函数结束整个程序。一个c源程序必须有,也只能有一个主函数main。

   函数定义的一般形式

   1.无参函数的一般形式

   类型说明符 函数名()
   {
    类型说明
    语句
   }

   其中类型说明符和函数名称为函数头。 类型说明符指明了本函数的类型,函数的类型实际上是函数返回值的类型。 该类型说明符与第二章介绍的各种说明符相同。 函数名是由用户定义的标识符,函数名后有一个空括号,其中无参数,但括号不可少。{} 中的内容称为函数体。在函数体中也有类型说明, 这是对函数体内部所用到的变量的类型说明。在很多情况下都不要求无参函数有返回值, 此时函数类型符可以写为void。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons