库函数存放在编译器里面了吗
① C语言的库函数是系统提供的吗
库是由系统提供,也有部分库是由第三方软件提供。
库函数 可以分为系统库函数和自己编写的库函数。
对于系统提供的库函数,一般存放在系统指定的目录下 lib之内。
但是这些库都是编译成可链接的文件,你不能直接看到源代码,可以再include文件夹里找到这些函数的声明和一些宏或者常量的定义。
对于用户自己的库函数,你可以编译成库文件,也可以直接以源代码方式提供。
对于系统库函数,你的使用#include <>
对于自己编写的库函数,如果你放在了系统库里可以使用 #include <>,否则使用#include " "
② 在C语言里标准函数存放在什么文件中
C语言标准库函数存放在头文件当中,使用相应函数时需要用include引用先关头文件。
C语言程序设计里,C 标准函数(C Standard library)是所有目前符合标准的头文件(head
file)的集合,以及常用的函数库实现程序,例如 I/O输入输出和字串符控制。不像 COBOL、Forrian和 PL/I等编程语言,在 C
语言的工作任务里不会包含嵌入的关键字,所以几乎所有的 C 语言程序都是由标准函数库的函数来创建的。下面列出C89及C99中C语言标准函数库的头文件。
C89中标准的头文件
<assert.h> 设定断言点
<ctype.h> 字符处理
<errno.h> 错误报告
<float.h> 定义与实现相关的浮点值勤
<limits.h> 定义与实现相关的各种极限值
<locale.h> 支持函数setlocale()
<math.h> 数学函数库使用的各种定义
<setjmp.h> 支持非局部跳转
<signal.h> 定义信号值
<stdarg.h> 支持可变长度的变元列表
<stddef.h> 定义常用常数
<stdio.h> 支持文件输入和输出
<stdlib.h> 其他各种声明
<string.h> 支持串函数
<time.h> 支持系统时间函数
C99新增的头文件和库
<complex.h> 支持复数算法
<fenv.h> 给出对浮点状态标记和浮点环境的其他方面的访问
<inttypes.h> 定义标准的、可移植的整型类型集合。也支持处理最大宽度整数的函数
<iso646.h> 首先在此1995年第一次修订时引进,用于定义对应各种运算符的宏
<stdbool.h> 支持布尔数据类型类型。定义宏bool,以便兼容于C++
<stdint.h> 定义标准的、可移植的整型类型集合。该文件包含在<inttypes.h>中
<tgmath.h> 定义一般类型的浮点宏
<wchar.h> 首先在1995年第一次修订时引进,用于支持多字节和宽字节函数
<wctype.h> 首先在1995年第一次修订时引进,用于支持多字节和宽字节分类函数
③ c++标准库是不是所有的编译器里面都有啊
应该这样说:原则上,所有被称作C++编译器的软件都应该遵循C++标准(ISO C++,可查阅网络知道),然后在此基础上可以扩充。也就是说原则上,C++标准库是都有的。但不排除少数编译器并不完全遵循标准,比如他们觉得某个函数在某处出现是不科学的,或如果换个方式做更好,有可能不理会标准。
STL是标准库中的,不然为啥叫STL(Standard)?但不是一开始就有STL,所以不是任何时代的C++编译器都能支持STL。与上面同理,也不是所有厂商的所有编译器都会恪守STL。只能说是绝大多数是。
库函数当然就是库里的函数啦~呵呵。