C Standard Library 简明教程
C Library - <stdlib.h>
stdlib.h 头定义了四种变量类型、几个宏和各种函数,用于执行通用函数。
The stdlib.h header defines four variable types, several macros, and various functions for performing general functions.
Library Variables
以下是在头文件 stdlib.h 中定义的变量类型−
Following are the variable types defined in the header stdlib.h −
Sr.No. |
Variable & Description |
1 |
size_t This is the unsigned integral type and is the result of the sizeof keyword. |
2 |
wchar_t This is an integer type of the size of a wide character constant. |
3 |
div_t This is the structure returned by the div function. |
4 |
ldiv_t This is the structure returned by the ldiv function. |
Library Macros
以下是 stdlib.h 头中定义的宏 −
Following are the macros defined in the header stdlib.h −
Sr.No. |
Macro & Description |
1 |
NULL This macro is the value of a null pointer constant. |
2 |
EXIT_FAILURE This is the value for the exit function to return in case of failure. |
3 |
EXIT_SUCCESS This is the value for the exit function to return in case of success. |
4 |
RAND_MAX This macro is the maximum value returned by the rand function. |
5 |
MB_CUR_MAX This macro is the maximum number of bytes in a multi-byte character set which cannot be larger than MB_LEN_MAX. |
Library Functions
以下是头文件 stlib.h 中定义的函数 −
Following are the functions defined in the header stlib.h −
Sr.No. |
Function & Description |
1 |
double atof(const char *str)Converts the string pointed to, by the argument str to a floating-point number (type double). |
2 |
int atoi(const char *str)Converts the string pointed to, by the argument str to an integer (type int). |
3 |
long int atol(const char *str)Converts the string pointed to, by the argument str to a long integer (type long int). |
4 |
double strtod(const char *str, char **endptr)Converts the string pointed to, by the argument str to a floating-point number (type double). |
5 |
long int strtol(const char *str, char **endptr, int base)Converts the string pointed to, by the argument str to a long integer (type long int). |
6 |
unsigned long int strtoul(const char *str, char **endptr, int base)Converts the string pointed to, by the argument str to an unsigned long integer (type unsigned long int). |
7 |
void *calloc(size_t nitems, size_t size)Allocates the requested memory and returns a pointer to it. |
8 |
void free(void *ptrDeallocates the memory previously allocated by a call to calloc, malloc, or realloc. |
9 |
void *malloc(size_t size)Allocates the requested memory and returns a pointer to it. |
10 |
void *realloc(void *ptr, size_t size)Attempts to resize the memory block pointed to by ptr that was previously allocated with a call to malloc or calloc. |
11 |
void abort(void)Causes an abnormal program termination. |
12 |
int atexit(void (func)(void))Causes the specified function *func to be called when the program terminates normally. |
13 |
void exit(int status)Causes the program to terminate normally. |
14 |
char *getenv(const char *name)Searches for the environment string pointed to by name and returns the associated value to the string. |
15 |
int system(const char *string)The command specified by string is passed to the host environment to be executed by the command processor. |
16 |
void *bsearch(const void *key, const void *base, size_t nitems, size_t size, int (*compar)(const void *, const void *))Performs a binary search. |
17 |
void qsort(void base, size_t nitems, size_t size, int (*compar)(const void *, const void))Sorts an array. |
18 |
int abs(int x)Returns the absolute value of x. |
19 |
div_t div(int numer, int denom)Divides numer (numerator) by denom (denominator). |
20 |
long int labs(long int x)Returns the absolute value of x. |
21 |
ldiv_t ldiv(long int numer, long int denom)Divides numer (numerator) by denom (denominator). |
22 |
int rand(void)Returns a pseudo-random number in the range of 0 to RAND_MAX. |
23 |
void srand(unsigned int seed)This function seeds the random number generator used by the function rand. |
24 |
int mblen(const char *str, size_t n)Returns the length of a multibyte character pointed to by the argument str. |
25 |
size_t mbstowcs(schar_t *pwcs, const char *str, size_t n)Converts the string of multibyte characters pointed to by the argument str to the array pointed to by pwcs. |
26 |
int mbtowc(whcar_t *pwc, const char *str, size_t n)Examines the multibyte character pointed to by the argument str. |
27 |
size_t wcstombs(char *str, const wchar_t *pwcs, size_t n)Converts the codes stored in the array pwcs to multibyte characters and stores them in the string str. |
28 |
int wctomb(char *str, wchar_t wchar)Examines the code which corresponds to a multibyte character given by the argument wchar. |