C Standard Library 简明教程
C Library - <stdlib.h>
stdlib.h 头定义了四种变量类型、几个宏和各种函数,用于执行通用函数。
Library Variables
以下是在头文件 stdlib.h 中定义的变量类型−
Sr.No. |
Variable & Description |
1 |
size_t 这是无符号整数类型,是 sizeof 关键字的结果。 |
2 |
wchar_t 这是大小为 wide 字符常量的整数类型。 |
3 |
div_t 这是 div 函数返回的结构。 |
4 |
ldiv_t 这是 ldiv 函数返回的结构。 |
Library Macros
以下是 stdlib.h 头中定义的宏 −
Sr.No. |
Macro & Description |
1 |
NULL 此宏是空指针常量的值。 |
2 |
EXIT_FAILURE 这是退出函数在失败时要返回的值。 |
3 |
EXIT_SUCCESS 这是退出函数在成功时要返回的值。 |
4 |
RAND_MAX 此宏是 rand 函数返回的最大值。 |
5 |
MB_CUR_MAX 此宏是多字节字符集中字节的最大数,不能大于 MB_LEN_MAX。 |
Library Functions
以下是头文件 stlib.h 中定义的函数 −
Sr.No. |
Function & Description |
1 |
double atof(const char *str) 将参数 str 指向的字符串转换为浮点数(类型 double)。 |
2 |
int atoi(const char *str) 将参数 str 指向的字符串转换为整数(类型 int)。 |
3 |
long int atol(const char *str) 将参数 str 指向的字符串转换为长整数(类型 long int)。 |
4 |
double strtod(const char *str, char **endptr) 将参数 str 指向的字符串转换为浮点数(类型 double)。 |
5 |
long int strtol(const char *str, char **endptr, int base) 将参数 str 指向的字符串转换为长整数(类型 long int)。 |
6 |
unsigned long int strtoul(const char *str, char **endptr, int base) 将参数 str 指向的字符串转换为无符号长整数(类型 unsigned long int)。 |
7 |
void *calloc(size_t nitems, size_t size) 分配所请求的内存并返回一个指向它的指针。 |
8 |
void free(void *ptr 为通过调用 calloc、malloc 或 realloc 而先前分配的内存分配内存。 |
9 |
void *malloc(size_t size) 分配所请求的内存并返回一个指向它的指针。 |
10 |
void *realloc(void *ptr, size_t size) 尝试调整事前通过调用 malloc 或 calloc 而分配的、ptr 所指向的内存块的大小。 |
11 |
void abort(void) 导致程序异常终止。 |
12 |
链接:../c_standard_library/c_function_atexit.html[int atexit(void ( func)(void))]Causes the specified function *func 程序正常终止时调用。 |
13 |
void exit(int status) 导致程序正常终止。 |
14 |
char *getenv(const char *name) 搜索环境字符串 name 所指向的环境字符串,并将关联值返回给该字符串。 |
15 |
int system(const char *string) 将字符串指定的命令传给主机环境,由命令处理器执行。 |
16 |
|
17 |
void qsort(void base, size_t nitems, size_t size, int (*compar)(const void *, const void)) 对数组排序。 |
18 |
int abs(int x) 返回 x 的绝对值。 |
19 |
div_t div(int numer, int denom) 将 numer (分子) 除以 denom (分母)。 |
20 |
long int labs(long int x) 返回 x 的绝对值。 |
21 |
ldiv_t ldiv(long int numer, long int denom) 将 numer (分子) 除以 denom (分母)。 |
22 |
int rand(void) 返回 0 到 RAND_MAX 范围内的伪随机数。 |
23 |
void srand(unsigned int seed) 此函数对该函数 rand 使用的随机数发生器进行填充。 |
24 |
int mblen(const char *str, size_t n) 返回参数 str 所指向的多字节字符的长度。 |
25 |
size_t mbstowcs(schar_t *pwcs, const char *str, size_t n) 将参数 str 所指向的多字节字符字符串转换成 pwcs 所指向的数组。 |
26 |
int mbtowc(whcar_t *pwc, const char *str, size_t n) 检查参数 str 指向的多字节字符。 |
27 |
size_t wcstombs(char *str, const wchar_t *pwcs, size_t n) 将存储在 pwcs 数组中的代码转换为多字节字符,并将它们存储在字符串中。 |
28 |
int wctomb(char *str, wchar_t wchar) 检查由参数 wchar 给出的多字节字符对应的代码。 |