函数是什么?
数学中我们常见到函数的概念。但是你了解C语言中的函数吗?维基百科中对于函数的定义:子程序
在计算机科学中,子程序是一个大型程序中的某部分代码,由一个或多个语句块组成。它负责完成某项特定任务,而相较于其它代码,具备相对的独立性。
一般会有输入参数并有返回值,提供对过程的封装和细节的隐藏。这些代码通常被集成为软件库。
C语言中函数的分类:
- 库函数
- 自定义函数
库函数
为什么会有库函数?
我们知道在学习C语言编程的时候,总是在一个代码编写完成后迫不及待地想知道结果,想把这个结果打印到我们的屏幕上看看。这个时候我们会频繁地使用一个功能:将信息按照一定的格式打印到屏幕上(printf)。
在编程的过程中我们会频繁地做一些字符串的拷贝工作(strcpy)。
在编程时我们也计算,总是会计算n的k次方这样的运算(pow)。
像上面我们描述的基础功能,它们不是业务性的代码。我们在开发的过程中每个程序员都可能用得到,为了支持可移植性和提高程序的效率,所以C语言的基础库中提供了一系列类似的库函数,方便程序员进行软件开发。
简单地总结,C语言常用的库函数有:
- IO函数
- 字符串操作函数
- 字符操作函数
- 内存操作函数
- 时间/日期函数
- 数学函数
- 其它库函数
实际案例:
#include <string.h>
int main()
{
char arr1[] = "bit";
char arr2[20] = "###";
strcpy(arr2, arr1); //strcpy - string copy - 字符串拷贝
printf("%s\n", arr2);
return 0;
}
#include <string.h>
int main()
{
//memset
//memory - 内存 set - 设置
char arr[] = "hello world";
memset(arr, '*', 5); //这里的'*'是以ASCII形式存储在内存里的,依然是整型的形式,所以'*'前不用加int
printf("%s\n", arr);
return 0;
}
注:库函数必须知道的一个秘密就是:使用库函数,必须包含#include对应的头文件。
这里对照文档来学习上面几个库函数,目的是掌握库函数的使用方法。
如何学会使用库函数?
需要全部记住吗?NO,需要学会查询工具的使用:
MSDN(Microsoft Developer Network)
cppreference.com (中文:cppreference.com)
英文很重要。最起码看得懂文献。