维系C世界框架的英雄
今天是关于C语言函数的故事。我相信很多人,学习C语言的第一段代码就是:
#include <stdio.h>
int main()
{
printf("Hello World!\n");
return 0;
}
而从一开始,最重要的函数main(),就出现在了我们的世界。
函数是什么?
维基百科中对函数的定义:子程序
- 在计算机科学中,子程序(英语:Subroutine, procedure, function, routine, method,subprogram, callable unit),是一个大型程序中的某部分代码, 由一个或多个语句块组 成。它负责完成某项特定任务,而且相较于其他代码,具备相对的独立性。
- 一般会有输入参数并有返回值,提供对过程的封装和细节的隐藏。这些代码通常被集成为软件库。
函数的分类
- 库函数
- 自定义函数
库函数
- 库函数(Library function)是将函数封装入库,供用户使用的一种方式。方法是把一些常用到的函数编完放到一个文件里,供不同的人进行调用。调用的时候把它所在的文件名用#include<>加到里面就可以了。一般是放到lib文件里的。
- 如我们用的输入输出函数(scanf,printf),拷贝字符串的函数(strcpy),求x的y次幂函数(pow)等等,都是我们常用的库函数。
库函数大致分类(举了下列函数类别含有的一些常见函数)
- IO函数:printf(输出)、scanf(输入)
- 字符串操作函数:strcmp(字符串比较)、strlen(计算字符串长度)
- 字符操作函数:toupper(小写转大写)
- 内存操作函数:memcpy(内存拷贝)、memset(内存初始化)
- 时间/日期函数:time(时间)
- 数学函数:sqrt(开平方)、pow(求x的y次幂)
- 其他函数
我们该怎样学习库函数呢?
- 在日常学习C语言的过程中,我们要学会积累库函数
- 要学会并善于使用一些查询工具,如http://zh.cppreference.com或者www.cplusplus.com
自定义函数
自定义函数和库函数一样,有函数名,返回值和函数参数。是程序员根据需求自己定义的一种函数。
自定义函数的组成
return_type fun_name(para)
{
statement;
}
//return_type 返回类型
//fun_name 函数名
//para 函数参数
//statement 语句项