C++ 参考手册
- C++11
- C++14
- C++17
- C++20
- C++ 编译器支持情况表
- 独立与宿主实现
- C++ 语言
- C++ 关键词
- 预处理器
- C++ 标准库头文件
- 标准库头文件 <ctime>
- 标准库头文件 <cstring>
- 标准库头文件 <set>
- 标准库头文件 <cctype>
- 标准库头文件 <cwctype>
- 标准库头文件 <utility>
- 标准库头文件 <queue>
- 标准库头文件 <complex>
- 标准库头文件 <iterator>
- 标准库头文件 <algorithm>
- 标准库头文件 <valarray>
- 标准库头文件 <numeric>
- 标准库头文件 <cmath>
- 标准库头文件 <iosfwd>
- 标准库头文件 <ios>
- 标准库头文件 <iomanip>
- 标准库头文件 <streambuf>
- 标准库头文件 <istream>
- 标准库头文件 <ostream>
- 标准库头文件 <iostream>
- 标准库头文件 <sstream>
- 标准库头文件 <clocale>
- 标准库头文件 <vector>
- 标准库头文件 <deque>
- 标准库头文件 <list>
- 标准库头文件 <map>
- 标准库头文件 <cwchar>
- 标准库头文件 <locale>
- 标准库头文件 <codecvt>
- 标准库头文件 <bitset>
- 标准库头文件 <functional>
- 标准库头文件 <stdexcept>
- 标准库头文件 <csignal>
- 标准库头文件 <csetjmp>
- 标准库头文件 <stack>
- 标准库头文件 <cassert>
- 标准库头文件 <cerrno>
- 标准库头文件 <memory>
- 标准库头文件 <typeindex>
- 标准库头文件 <type_traits>
- 标准库头文件 <chrono>
- 标准库头文件 <initializer_list>
- 标准库头文件 <tuple>
- 标准库头文件 <scoped_allocator>
- 标准库头文件 <cstdint>
- 标准库头文件 <cinttypes>
- 标准库头文件 <system_error>
- 标准库头文件 <cuchar>
- 标准库头文件 <array>
- 标准库头文件 <forward_list>
- 标准库头文件 <unordered_set>
- 标准库头文件 <unordered_map>
- 标准库头文件 <random>
- 标准库头文件 <ratio>
- 标准库头文件 <cfenv>
- 标准库头文件 <regex>
- 标准库头文件 <atomic>
- 标准库头文件 <thread>
- 标准库头文件 <mutex>
- 标准库头文件 <future>
- 标准库头文件 <condition_variable>
- 标准库头文件 <any>
- 标准库头文件 <optional>
- 标准库头文件 <variant>
- 标准库头文件 <memory_resource>
- 标准库头文件 <string_view>
- 标准库头文件 <charconv>
- 标准库头文件 <execution>
- 标准库头文件 <filesystem>
- 标准库头文件 <concepts>
- 标准库头文件 <coroutine>
- 标准库头文件 <compare>
- 标准库头文件 <version>
- 标准库头文件 <source_location>
- 标准库头文件 <format>
- 标准库头文件 <span>
- 标准库头文件 <ranges>
- 标准库头文件 <bit>
- 标准库头文件 <numbers>
- 标准库头文件 <syncstream>
- 标准库头文件 <stop_token>
- 标准库头文件 <semaphore>
- 标准库头文件 <latch>
- 标准库头文件 <barrier>
- 标准库头文件 <string>
- 标准库头文件 <cstddef>
- 标准库头文件 <limits>
- 标准库头文件 <cfloat>
- 标准库头文件 <climits>
- 标准库头文件 <cstdlib>
- 标准库头文件 <new>
- 标准库头文件 <typeinfo>
- 标准库头文件 <exception>
- 标准库头文件 <cstdarg>
- 标准库头文件 <ciso646>
- 标准库头文件 <cstdalign>
- 标准库头文件 <cstdbool>
- 标准库头文件 <fstream>
- 标准库头文件 <cstdio>
- 标准库头文件 <strstream>
- 标准库头文件 <shared_mutex>
- 标准库头文件 <ccomplex>
- 标准库头文件 <ctgmath>
- 注释
- 具名要求
- 功能特性测试 (C++20)
- 工具库
- 类型支持(基本类型、RTTI、类型特性)
- 概念库 (C++20)
- 错误处理
- 动态内存管理
- 日期和时间工具
- 字符串库
- 容器库
- 迭代器库
- 范围库 (C++20)
- 算法库
- 数值库
- 输入/输出库
- 文件系统库
- 本地化库
- 正则表达式库
- 原子操作库
- 线程支持库
- 实验性 C++ 特性
- 有用的资源
- 索引
- std 符号索引
- 协程支持 (C++20)
- C++ 关键词
位置:首页 > C++ 参考手册 >C++ 标准库头文件 > 标准库头文件 <cstdlib>
标准库头文件 <cstdlib>
此头文件原作为 <stdlib.h>
存在于 C 标准库。
此头文件提供杂项工具。此处所定义的各个符号为多个标准库组件所用。
宏常量
指示程序执行的执行状态 (宏常量) | |
MB_CUR_MAX |
当前本地环境中多字节字符的最大字节数 (宏常量) |
实现定义的空指针常量 (宏常量) | |
std::rand 生成的最大可能值 (宏常量) |
类型
结构体类型,std::div 函数的返回值 (typedef) | |
结构体类型,std::ldiv 函数的返回值 (typedef) | |
(C++11) |
结构体类型,std::lldiv 函数的返回值 (typedef) |
sizeof 运算符返回的无符号整数类型 (typedef) |
函数
进程控制 | |
导致非正常的程序终止(不进行清理) (函数) | |
导致正常的程序终止并进行清理 (函数) | |
(C++11) |
导致快速程序终止,不进行完全的清理 (函数) |
(C++11) |
导致正常的程序终止,不进行清理 (函数) |
注册将于调用 std::exit() 时被调用的函数 (函数) | |
(C++11) |
注册将于调用 quick_exit 时被调用的函数 (函数) |
调用宿主环境的命令处理器 (函数) | |
访问环境变量列表 (函数) | |
内存管理 | |
分配内存 (函数) | |
(C++17) |
分配对齐的内存 (函数) |
分配并清零内存 (函数) | |
扩张先前分配的内存块 (函数) | |
解分配先前分配的内存 (函数) | |
数值字符串转换 | |
转换字节字符串为浮点值 (函数) | |
转换字节字符串为整数值 (函数) | |
转换字节字符串为整数值 (函数) | |
转换字节字符串为无符号整数值 (函数) | |
转换字节字符串为浮点值 (函数) | |
宽字符串操作 | |
返回下一个多字节字符中的字节数 (函数) | |
将下一个多字节字符转换成宽字符 (函数) | |
转换宽字符为其多字节表示 (函数) | |
转换窄多字节字符串为宽字符串 (函数) | |
转换宽字符串为窄多字节字符串 (函数) | |
杂项算法与数学 | |
生成伪随机数 (函数) | |
初始化伪随机数生成器 (函数) | |
对未指定类型的元素的一个范围进行排序 (函数) | |
在未指定类型的数组中搜索元素 (函数) | |
(C++11) |
计算整数值的绝对值( |x| ) (函数) |
(C++11) |
计算整数除法的商和余数 (函数) |
概要
namespace std { using size_t = /* 见说明 */ ; using div_t = /* 见说明 */ ; using ldiv_t = /* 见说明 */ ; using lldiv_t = /* 见说明 */ ; } #define NULL /* 见说明 */ #define EXIT_FAILURE /* 见说明 */ #define EXIT_SUCCESS /* 见说明 */ #define RAND_MAX /* 见说明 */ #define MB_CUR_MAX /* 见说明 */ namespace std { // 仅用于阐释的函数类型别名 extern "C" using /*c-atexit-handler*/ = void(); // 仅为阐释 extern "C++" using /*atexit-handler*/ = void(); // 仅为阐释 extern "C" using /*c-compare-pred*/ = int(const void* , const void*); // 仅为阐释 extern "C++" using /*compare-pred*/ = int(const void* , const void*); // 仅为阐释 // 启动与终止 [[noreturn]] void abort() noexcept; int atexit(/*c-atexit-handler*/ * func) noexcept; int atexit(/*atexit-handler*/ * func) noexcept; int at_quick_exit(/*c-atexit-handler*/ * func) noexcept; int at_quick_exit(/*atexit-handler*/ * func) noexcept; [[noreturn]] void exit(int status); [[noreturn]] void _Exit(int status) noexcept; [[noreturn]] void quick_exit(int status) noexcept; char* getenv(const char* name); int system(const char* string); // C 标准库内存分配 void* aligned_alloc(size_t alignment, size_t size); void* calloc(size_t nmemb, size_t size); void free(void* ptr); void* malloc(size_t size); void* realloc(void* ptr, size_t size); double atof(const char* nptr); int atoi(const char* nptr); long int atol(const char* nptr); long long int atoll(const char* nptr); double strtod(const char* nptr, char** endptr); float strtof(const char* nptr, char** endptr); long double strtold(const char* nptr, char** endptr); long int strtol(const char* nptr, char** endptr, int base); long long int strtoll(const char* nptr, char** endptr, int base); unsigned long int strtoul(const char* nptr, char** endptr, int base); unsigned long long int strtoull(const char* nptr, char** endptr, int base); // 多字节/宽字符串及字符转换函数 int mblen(const char* s, size_t n); int mbtowc(wchar_t* pwc, const char* s, size_t n); int wctomb(char* s, wchar_t wchar); size_t mbstowcs(wchar_t* pwcs, const char* s, size_t n); size_t wcstombs(char* s, const wchar_t* pwcs, size_t n); // C 标准库算法 void* bsearch(const void* key, const void* base, size_t nmemb, size_t size, /*c-compare-pred*/ * compar); void* bsearch(const void* key, const void* base, size_t nmemb, size_t size, /*compare-pred*/ * compar); void qsort(void* base, size_t nmemb, size_t size, /*c-compare-pred*/ * compar); void qsort(void* base, size_t nmemb, size_t size, /*compare-pred*/ * compar); // 低质量随机数生成 int rand(); void srand(unsigned int seed); // 绝对值 int abs(int j); long int abs(long int j); long long int abs(long long int j); float abs(float j); double abs(double j); long double abs(long double j); long int labs(long int j); long long int llabs(long long int j); div_t div(int numer, int denom); ldiv_t div(long int numer, long int denom); lldiv_t div(long long int numer, long long int denom); ldiv_t ldiv(long int numer, long int denom); lldiv_t lldiv(long long int numer, long long int denom); }