重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
库函数(Library function)是把函数放到库里,供别人使用的一种方式。.方法是把一些常用到的函数编完放到一个文件里,供不同的人进行调用。调用的时候把它所在的文件名用#include加到里面就可以了。一般是放到lib文件里的。
成都创新互联是专业的涞源网站建设公司,涞源接单;提供成都网站制作、做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行涞源网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
一般是指编译器提供的可在c源程序中调用的函数。可分为两类,一类是c语言标准规定的库函数,一类是编译器特定的库函数。
由于版权原因,库函数的源代码一般是不可见的,但在头文件中你可以看到它对外的接口
库函数简介。
C语言的语句十分简单,如果要使用C语言的语句直接计算sin或cos函数,就需要编写颇为复杂的程序。因为C语言的语句中没有提供直接计算sin或cos函数的语句。又如为了显示一段文字,我们在C语言中也找不到显示语句,只能使用库函数printf。
C语言的库函数并不是C语言本身的一部分,它是由编译程序根据一般用户的需要编制并提供用户使用的一组程序。C的库函数极大地方便了用户,同时也补充了C语言本身的不足。事实上,在编写C语言程序时,应当尽可能多地使用库函数,这样既可以提高程序的运行效率,又可以提高编程的质量。
这里调用的是静态库。
函数库:函数库是由系统建立的具有一定功能的函数的集合。库中存放函数的名称和对应的目标代码,以及连接过程中所需的重定位信息。用户也可以根据自己的需要建立自己的用户函数库。
库函数:存放在函数库中的函数。库函数具有明确的功能、入口调用参数和返回值。
连接程序:将编译程序生成的目标文件连接在一起生成一个可执行文件。
头文件:有时也称为包含文件。C语言库函数与用户程序之间进行信息通信时要使用的数据和变量,在使用某一库函数时,都要在程序中嵌入(用#include)该函数对应的头文件。
由于C语言编译系统应提供的函数库尚无国际标准。不同版本的C语言具有不同的库函数,用户使用时应查阅有关版本的C的库函数参考手册。我们以Turbo C为例简介一下C的库函数,并附录中给出了Turbo C的部分常用库函数。
iv_t和lldiv_t;宏例如EXIT_FAILURE、EXIT_SUCCESS、RAND_MAX和MB_CUR_MAX等等;
常见的函数有malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()等。具体内容可以在编译器的包含目录stdlib.h头文件中打开查看。
为了方便用户编写程序,C语言为用户开发了大量的库函数,定义在。H文件,用户可以调用这些函数来实现强大的功能。因此,对于用户来说,这些函数的使用是提高编程水平的关键。
扩展资料:
以下内容适用于头文件
1.对于具有外部存储类型的标识符,可以在任何其他源程序文件中声明后引用它们,这样用户就可以完全将具有外部存储类型的标识符的一些声明放在头文件中。
2.具体来说,头文件可以包括用户构造的数据类型(例如枚举类型)、外部变量、外部函数、常量和具有一定通用性或公共量的内联函数。一般的变量和函数定义不应该放在头文件中。
其他:
双假设(双x,双y);//给定一个直角三角形的两条边的长度,求斜边的长度。
双ldexp(双x,int指数);//计算x*(2的指数次方)。
双poly(Doublex,intdegree,Doublecoeffs[])//计算多项式。
Ntmatherr(structexception*e)//数学错误计算处理程序。
下面给出Turbo C的全部".h"文件。Turbo C头文件:
头文件
说明
alloc.h 说明内存管理函数(分配、释放等)。
assert.h 定义 assert调试宏。
bios.h 说明调用IBM—PC ROM BIOS子程序的各个函数。
conio.h 说明调用DOS控制台I/O子程序的各个函数。
ctype.h 包含有关字符分类及转换的名类信息(如 isalpha和toascii等)。
dir.h 包含有关目录和路径的结构、宏定义和函数。
dos.h 定义和说明MSDOS和8086调用的一些常量和函数。
error.h 定义错误代码的助记符。
fcntl.h 定义在与open库子程序连接时的符号常量。
float.h 包含有关浮点运算的一些参数和函数。
graphics.h 说明有关图形功能的各个函数,图形错误代码的常量定义,正对不同驱动程序的各种颜色值,及函数用到的一些特殊结构。
io.h 包含低级I/O子程序的结构和说明。
limit.h 包含各环境参数、编译时间限制、数的范围等信息。
math.h 说明数学运算函数,还定了 HUGE VAL 宏, 说明了matherr和matherr子程序用到的特殊结构。
mem.h 说明一些内存操作函数(其中大多数也在STRING.H中说明)。
process.h 说明进程管理的各个函数,spawn…和EXEC …函数的结构说明。
setjmp.h 定义longjmp和setjmp函数用到的jmp buf类型,说明这两个函数。
share.h 定义文件共享函数的参数。
signal.h 定义SIG[ZZ(Z] [ZZ)]IGN和SIG[ZZ(Z] [ZZ)]DFL常量,说明rajse和signal两个函数。
stddef.h 定义读函数参数表的宏。(如vprintf,vscarf函数)。
stddef.h 定义一些公共数据类型和宏。
stdio.h 定义Kernighan和Ritchie在Unix System V 中定义的标准和扩展的类型和宏。还定义标准I/O 预定义流:stdin,stdout和stderr,说明 I/O流子程序。
stdlib.h 说明一些常用的子程序:转换子程序、搜索/ 排序子程序等。
string.h 说明一些串操作和内存操作函数。
sys\stat.h 定义在打开和创建文件时用到的一些符号常量。
sys\types.h 说明ftime函数和timeb结构。
sys\time.h 定义时间的类型time[ZZ(Z] [ZZ)]t。
time.h 定义时间转换子程序asctime、localtime和gmtime的结构,ctime、 difftime、 gmtime、 localtime和stime用到的类型,并提供这些函数的原型。
value.h 定义一些重要常量,包括依赖于机器硬件的和为与Unix System V相兼容而说明的一些常量,包括浮点和双精度值的范围。C系统提供了丰富的系统文件,称为库文件。C的库文件分为两类,一类是扩展名为".h"的文件,称为头文件,在前面的包含命令中我们已多次使用过。在".h"文件中包含了常量定义、 类型定义、宏定义、函数原型以及各种编译选择设置等信息。另一类是函数库,包括了各种函数的目标代码,供用户在程序中调用。通常在程序中调用一个库函数时,要在调用之前包含该函数原型所在的".h" 文件。
字符处理函数
本类别函数用于对单个字符进行处理,包括字符的类别测试和字符的大小写转换
头文件
ctype.h
函数列表
函数类别
函数用途
详细说明
字符测试
是否字母和数字
isalnum
是否字母
isalpha
是否控制字符
iscntrl
是否数字
isdigit
是否可显示字符(除空格外)
isgraph
是否可显示字符(包括空格)
isprint
是否既不是空格,又不是字母和数字的可显示字符
ispunct
是否空格
isspace
是否大写字母
isupper
是否16进制数字(0-9,A-F)字符
isxdigit
字符大小写转换函数
转换为大写字母
toupper
转换为小写字母
tolower
地区化
本类别的函数用于处理不同国家的语言差异。
头文件
local.h
函数列表
函数类别
函数用途
详细说明
地区控制
地区设置
setlocale
数字格式约定查询
国家的货币、日期、时间等的格式转换
localeconv
数学函数
本分类给出了各种数学计算函数,必须提醒的是ANSI
C标准中的数据格式并不符合IEEE754标准,一些C语言编译器却遵循IEEE754(例如frinklin
C51)
头文件
math.h
函数列表
函数类别
函数用途
详细说明
错误条件处理
定义域错误(函数的输入参数值不在规定的范围内)
值域错误(函数的返回值不在规定的范围内)
三角函数
反余弦
acos
反正弦
asin
反正切
atan
反正切2
atan2
余弦
cos
正弦
sin
正切
tan
双曲函数
双曲余弦
cosh
双曲正弦
sinh
双曲正切
tanh
指数和对数
指数函数
exp
指数分解函数
frexp
乘积指数函数
fdexp
自然对数
log
以10为底的对数
log10
浮点数分解函数
modf
幂函数
幂函数
pow
平方根函数
sqrt
整数截断,绝对值和求余数函数
求下限接近整数
ceil
绝对值
fabs
求上限接近整数
floor
求余数
fmod
本分类函数用于实现在不同底函数之间直接跳转代码。
头文件
setjmp.h
io.h
函数列表
函数类别
函数用途
详细说明
保存调用环境
setjmp
恢复调用环境
longjmp
信号处理
该分类函数用于处理那些在程序执行过程中发生例外的情况。
头文件
signal.h
函数列表
函数类别
函数用途
详细说明
指定信号处理函数
signal
发送信号
raise
可变参数处理
本类函数用于实现诸如printf,scanf等参数数量可变底函数。
头文件
stdarg.h
函数列表
函数类别
函数用途
详细说明
可变参数访问宏
可变参数开始宏
va_start
可变参数结束宏
va_end
可变参数访问宏
访问下一个可变参数宏
va_arg
输入输出函数
该分类用于处理包括文件、控制台等各种输入输出设备,各种函数以“流”的方式实现
头文件
stdio.h
函数列表
函数类别
函数用途
详细说明
文件操作
删除文件
remove
修改文件名称
rename
生成临时文件名称
tmpfile
得到临时文件路径
tmpnam
文件访问
关闭文件
fclose
刷新缓冲区
fflush
打开文件
fopen
将已存在的流指针和新文件连接
freopen
设置磁盘缓冲区
setbuf
设置磁盘缓冲区
setvbuf
格式化输入与输出函数
格式输出
fprintf
格式输入
fscanf
格式输出(控制台)
printf
格式输入(控制台)
scanf
格式输出到缓冲区
sprintf
从缓冲区中按格式输入
sscanf
格式化输出
vfprintf
格式化输出
vprintf
格式化输出
vsprintf
字符输入输出函数
输入一个字符
fgetc
字符串输入
fgets
字符输出
fputc
字符串输出
fputs
字符输入(控制台)
getc
字符输入(控制台)
getchar
字符串输入(控制台)
gets
字符输出(控制台)
putc
字符输出(控制台)
putchar
字符串输出(控制台)
puts
字符输出到流的头部
ungetc
直接输入输出
直接流读操作
fread
直接流写操作
fwrite
文件定位函数
得到文件位置
fgetpos
文件位置移动
fseek
文件位置设置
fsetpos
得到文件位置
ftell
文件位置复零位
remind
错误处理函数
错误清除
clearerr
文件结尾判断
feof
文件错误检测
ferror
得到错误提示字符串
perror
实用工具函数
本分类给出了一些函数无法按以上分类,但又是编程所必须要的。
头文件
stdlib.h
函数列表
函数类别
函数用途
详细说明
字符串转换函数
字符串转换为整数
atoi
字符串转换为长整数
atol
字符串转换为浮点数
strtod
字符串转换为长整数
strtol
字符串转换为无符号长整型
strtoul
伪随机序列产生函数
产生随机数
rand
设置随机函数的起动数值
srand
存储管理函数
分配存储器
calloc
释放存储器
free
存储器分配
malloc
重新分配存储器
realloc
环境通信
中止程序
abort
退出程序执行,并清除环境变量
atexit
退出程序执行
exit
读取环境参数
getenv
程序挂起,临时执行一个其他程序
system
搜索和排序工具
二分查找(数据必须已排序)
bsearch
快速排序
qsort
整数运算函数
求绝对值
abs
div
得到除法运算底商和余数
求长整形底绝对值
labs
求长整形除法的商和余数
ldiv
多字节字符函数
得到多字节字符的字节数
mblen
得到多字节字符的字节数
mbtowc
多字节字符转换
wctomb
多字节字符的字符串操作
将多字节串转换为整数数组
mbstowcs
将多字节串转换为字符数组
mcstowbs
字符串处理
本分类的函数用于对字符串进行合并、比较等操作
头文件
string.h
函数列表
函数类别
函数用途
详细说明
字符串拷贝
块拷贝(目的和源存储区不可重叠)
memcpy
块拷贝(目的和源存储区可重叠)
memmove
串拷贝
strcpy
按长度的串拷贝
strncpy
字符串连接函数
串连接
strcat
按长度连接字符串
strncat
串比较函数
块比较
memcmp
字符串比较
strcmp
字符串比较(用于非英文字符)
strcoll
按长度对字符串比较
strncmp
字符串转换
strxfrm
字符与字符串查找
字符查找
memchr
字符查找
strchr
字符串查找
strcspn
字符串查找
strpbrk
字符串查找
strspn
字符串查找
strstr
字符串分解
strtok
杂类函数
字符串设置
memset
错误字符串映射
strerror
求字符串长度
strlen
日期和时间函数
本类别给出时间和日期处理函数
头文件
time.h
函数列表
函数类别
函数用途
详细说明
时间操作函数
得到处理器时间
clock
得到时间差
difftime
设置时间
mktime
得到时间
time
时间转换函数
得到以ASCII码表示的时间
asctime
得到字符串表示的时间
ctime
得到指定格式的时间
strftime
函数库未来的发展方向
本部分用于说明各类别函数库在将来如何发展。
序号
库类别
头文件
详细说明
1
错误处理
errno.h
2
字符处理
ctype.h
3
地区化
local.h
4
数学函数
math.h
5
信号处理
signal.h
6
输入输出
stdio.h
7
实用工具程序
stdlib.h
8
字符串处理
string.h
C语言的库函数在LIB目录里面。
库函数是将函数封装入库,供用户使用的一种方式。方法是把一些常用到的函数编完放到一个文件里,供不同的人进行调用。调用的时候把它所在的文件名用#include加到里面就可以了。一般是放到lib文件里的。
扩展资料:
C语言的语句十分简单,如果要使用C语言的语句直接计算sin或cos函数,就需要编写颇为复杂的程序。因为C语言的语句中没有提供直接计算sin或cos函数的语句。又如为了显示一段文字,我们在C语言中也找不到显示语句,只能使用库函数printf。
C语言的库函数并不是C语言本身的一部分,它是由编译程序根据一般用户的需要编制并提供用户使用的一组程序。C的库函数极大地方便了用户,同时也补充了C语言本身的不足。事实上,在编写C语言程序时,应当尽可能多地使用库函数,这样既可以提高程序的运行效率,又可以提高编程的质量。
有一些代码,我们编程时经常用到,或者我们对某些部分很熟悉,并写出了一些可用的接口。这时,我们会考虑把这些c文件做成一个lib库,以方便自己使用,或这给别人调用。
我这里介绍下在vc++6.0下如何来制作静态库:
第一步:创建一个工程,选择Win32Static Library,输入工程名。这时就创建好了。
第二步:工程创建好了,再点击新建,这时选择文件,选择c++ source file选项,创建一个.c
文件。
在这个文件中,你可以写入你要做成库的c函数。当然,可以继续创建其他c文件,然后将要供外部使用的接口单独放到头文件中,一般而言,一个c文件对应一个头文件。
第三步:完成以上步骤后,我们就可以生成库了。事实上,我们点击编译即可,这时就可以生成.lib文件了。
一般情况下,是可以正常生成lib文件的。有头文件和lib文件就可以给别人用了。然后我们可以写一个测试函数来试试可不可以使用。
要调用生成的lib中的函数,就要引入头函数。这时,你把lib和头文件放入当前工程中,但build的时候却显示了连接错误。那是因为你没有把lib文件包含进来。加入下面这句话即可了:
#pragma comment(lib, "mylib.lib ")
Ok,自己的lib库就这样做成了。以后可以随便调用了。