C /C++标准库 - <cstdlib>(stdlib.h)

stdlib.h

standard library标准库头文件,是一个大杂烩,定义和声明一些没有明显的归属的宏和函数。

1. Types

序号Types描述
1div_tStructure returned by div
2ldiv_tStructure returned by ldiv
3lldiv_t (c++11)Structure returned by lldiv
4size_tUnsigned integral type

2. Macro constants

序号Macro描述
1EXIT_FAILUREFailure termination code
2EXIT_SUCCESSSuccess termination code
3NULLNull pointer
4RAND_MAXMaximum value returned by rand
5MB_CUR_MAXMaximum size of multibyte characters

3.Functions

3.1 String conversion
序号function原型说明
1atofdouble atof (const char* str);Convert string to double
2atoiint atoi (const char * str);Convert string to integer
3atollong int atol ( const char * str );Convert string to long integer
4atoll(c++11)long long int atoll ( const char * str );Convert string to long long integer
5strtoddouble strtod (const char* str, char** endptr);若endptr为NULL,功能同atod,否则将非法解析完剩余字符串保存在endptr中
6strtof(c++11)float strtof (const char* str, char** endptr);同上
3.2 Pseudo-random sequence generation(伪随机序列)
序号标记原型功能说明
1randint rand (void);Generate random numberReturns a pseudo-random integral number in the range between 0 and RAND_MAX.
2srandvoid srand (unsigned int seed);Initialize random number generator使用参数seed生成伪随机序列种子
3.3 Dynamic memory management(内存管理函数
序号标记原型功能说明
1allocvoid* calloc (size_t num, size_t size);Allocate and zero-initialize array成功,返回指针,失败,返回NULL
2freevoid free (void* ptr);Deallocate memory block
3mallocvoid* malloc (size_t size);Allocate memory block
4reallocvoid* realloc (void* ptr, size_t size);Reallocate memory block将指向的对象大小改变为size指定的大小
3.4 Environment(环境通信函数)
序号标记原型功能说明
1abortvoid abort(void)使程序异常终止
2atexitint atexit (void (*func)(void));注册func指向的函数,该函数在异常终止时被调用注册成功,返回零,否则返回非零
3at_quick_exit(C++11)int at_quick_exit (void (*func)(void));Set function to be executed on quick exit同上
4exitvoid exit (int status);使程序的执行正常终止status是0或者EXIT_SUCCESS,返回成功终止状态,否则失败
5_Exit(C++11)void _Exit (int status);Terminate calling process
6quick_exit(C++11)void quick_exit (int status);Terminate calling process quick
7getenvchar* getenv (const char* name);搜索一个与name匹配的宿主环境表串成功,返回指向串的指针,失败,返回NULL
8systemint system (const char* command);把string指向的串传递给宿主环境,然后命令处理程序按照事先定义的方式执行
3.5 Searching and sorting(查找和排序)
序号标记原型功能说明
1bsearchvoid* bsearch (const void* key, const void* base,size_t num, size_t size, int (compar)(const void,const void*));二分查找找到,返回指向匹配元素的指针,否则返回NULL
2qsortvoid qsort (void* base, size_t num, size_t size, int (compar)(const void,const void*));快速排序
3.6 Integer arithmetics(整数算术)
序号标记原型功能
1absint abs (int n);取绝对值
2labslong int labs (long int n);
3llabs(c++11)long long int llabs (long long int n);
4divdiv_t div (int numer, int denom);计算number除以分母denom所得的商和余数
5ldivldiv_t ldiv (long int numer, long int denom);
6lldiv(c++11)lldiv_t lldiv (long long int numer, long long int denom);
3.7 Multibyte characters(多字节字符函数)
序号标记原型描述
1mblenint mblen (const char* pmb, size_t max);Get length of multibyte character
2mbtowcint mbtowc (wchar_t* pwc, const char* pmb, size_t max);Convert multibyte sequence to wide character
3wctombint wctomb (char* pmb, wchar_t wc);Convert wide character to multibyte sequence
3.8 Multibyte strings(多字节字符串函数)
序号标记原型描述
1mbstowcssize_t mbstowcs (wchar_t* dest, const char* src, size_t max);Convert multibyte string to wide-character string
2wcstombssize_t wcstombs (char* dest, const wchar_t* src, size_t max);Convert wide-character string to multibyte string

参考:http://www.cplusplus.com/reference/cstdlib/
《C标准库》,P.J. Plauger 著
《C语言参考手册》,Samuel P. Harbison III 等著

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值