目录
- cstring 字符串和内存复制
- cstdlib 字符串和内存分配
- cstdio 输入输出
- cmath 数学函数
- ctime 时间函数
1 头文件cstring
#include<cstring>
函数 | 描述 |
---|---|
void *memchr(const void *str, int c, size_t n) | 在参数 str 所指向的字符串的前 n 个字节中搜索第一次出现字符 c(一个无符号字符)的位置。 |
int memcmp(const void *str1, const void *str2, size_t n) | 把 str1 和 str2 的前 n 个字节进行比较。 |
void *memcpy(void *dest, const void *src, size_t n) | 从 src 复制 n 个字符到 dest。 |
void *memmove(void *dest, const void *src, size_t n) | 另一个用于从 src 复制 n 个字符到 dest 的函数。 |
void *memset(void *str, int c, size_t n) | 复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符。 |
char *strcat(char *dest, const char *src) | 把 src 所指向的字符串追加到 dest 所指向的字符串的结尾。 |
char *strncat(char *dest, const char *src, size_t n) | 把 src 所指向的字符串追加到 dest 所指向的字符串的结尾,直到 n 字符长度为止。 |
char *strchr(const char *str, int c) | 在参数 str 所指向的字符串中搜索第一次出现字符 c(一个无符号字符)的位置。 |
int strcmp(const char *str1, const char *str2) | 把 str1 所指向的字符串和 str2 所指向的字符串进行比较。 |
int strncmp(const char *str1, const char *str2, size_t n) | 把 str1 和 str2 进行比较,最多比较前 n 个字节。 |
int strcoll(const char *str1, const char *str2) | 把 str1 和 str2 进行比较,结果取决于 LC_COLLATE 的位置设置。 |
char *strcpy(char *dest, const char *src) | 把 src 所指向的字符串复制到 dest。 |
char *strncpy(char *dest, const char *src, size_t n) | 把 src 所指向的字符串复制到 dest,最多复制 n 个字符。 |
size_t strcspn(const char *str1, const char *str2) | 检索字符串 str1 开头连续有几个字符都不含字符串 str2 中的字符。 |
char *strerror(int errnum) | 从内部数组中搜索错误号 errnum,并返回一个指向错误消息字符串的指针。 |
size_t strlen(const char *str) | 计算字符串 str 的长度,直到空结束字符,但不包括空结束字符。 |
char *strpbrk(const char *str1, const char *str2) | 检索字符串 str1 中第一个匹配字符串 str2 中字符的字符,不包含空结束字符。也就是说,依次检验字符串 str1 中的字符,当被检验字符在字符串 str2 中也包含时,则停止检验,并返回该字符位置。 |
char *strrchr(const char *str, int c) | 在参数 str 所指向的字符串中搜索最后一次出现字符 c(一个无符号字符)的位置。 |
size_t strspn(const char *str1, const char *str2) | 检索字符串 str1 中第一个不在字符串 str2 中出现的字符下标。 |
char *strstr(const char *haystack, const char *needle) | 在字符串 haystack 中查找第一次出现字符串 needle(不包含空结束字符)的位置。 |
char *strtok(char *str, const char *delim) | 分解字符串 str 为一组字符串,delim 为分隔符。 |
size_t strxfrm(char *dest, const char *src, size_t n) | 根据程序当前的区域选项中的 LC_COLLATE 来转换字符串 src 的前 n 个字符,并把它们放置在字符串 dest 中。 |
2 头文件cstdlib
#include<cstdlib>
字符串相关
函数 | 描述 |
---|---|
double atof(const char *str) | 把参数 str 所指向的字符串转换为一个浮点数(类型为 double 型)。 |
int atoi(const char *str) | 把参数 str 所指向的字符串转换为一个整数(类型为 int 型)。 |
long int atol(const char *str) | 把参数 str 所指向的字符串转换为一个长整数(类型为 long int 型)。 |
double strtod(const char *str, char **endptr) | 把参数 str 所指向的字符串转换为一个浮点数(类型为 double 型)。 |
long int strtol(const char *str, char **endptr, int base) | 把参数 str 所指向的字符串转换为一个长整数(类型为 long int 型)。 |
unsigned long int strtoul(const char *str, char **endptr, int base) | 把参数 str 所指向的字符串转换为一个无符号长整数(类型为 unsigned long int 型)。 |
内存分配
函数 | 描述 |
---|---|
void *calloc(size_t nitems, size_t size) | 分配所需的内存空间,并返回一个指向它的指针。 |
void free(void *ptr) | 释放之前调用 calloc、malloc 或 realloc 所分配的内存空间。 |
void *malloc(size_t size) | 分配所需的内存空间,并返回一个指向它的指针。 |
void *realloc(void *ptr, size_t size) | 尝试重新调整之前调用 malloc 或 calloc 所分配的 ptr 所指向的内存块的大小。 |
随机数
函数 | 描述 |
---|---|
int rand(void) | 返回一个范围在 0 到 RAND_MAX 之间的伪随机数。 |
void srand(unsigned int seed) | 该函数播种由函数 rand 使用的随机数发生器。 |
系统函数
函数 | 描述 |
---|---|
void abort(void) | 使一个异常程序终止。 |
int atexit(void (*func)(void)) | 当程序正常终止时,调用指定的函数 func。 |
void exit(int status) | 使程序正常终止。 |
char *getenv(const char *name) | 搜索 name 所指向的环境字符串,并返回相关的值给字符串。 |
int system(const char *string) | 由 string 指定的命令传给要被命令处理器执行的主机环境。 |
3 头文件cstdio
#include<cstdio>
文件函数
- File access:
函数 | 描述 |
---|---|
fclose | |
Close file (function ) | |
fflush | |
Flush stream (function ) | |
fopen | |
Open file (function ) | |
freopen | |
Reopen stream with different file or mode (function ) | |
setbuf | |
Set stream buffer (function ) | |
setvbuf | |
Change stream buffering (function ) |
- Direct input/output:
函数 | 描述 |
---|---|
fread | |
Read block of data from stream (function ) | |
fwrite | |
Write block of data to stream (function ) |
- File positioning:
函数 | 描述 |
---|---|
fgetpos | |
Get current position in stream (function ) | |
fseek | |
Reposition stream position indicator (function ) | |
fsetpos | |
Set position indicator of stream (function ) | |
ftell | |
Get current position in stream (function ) | |
rewind | |
Set position of stream to the beginning (function ) |
- Error-handling:
函数 | 描述 |
---|---|
clearerr | |
Clear error indicators (function ) | |
feof | |
Check end-of-file indicator (function ) | |
ferror | |
Check error indicator (function ) | |
perror | |
Print error message (function ) |
格式化输入输出函数
Formatted input/output:
函数 | 描述 |
---|---|
fprintf | |
Write formatted data to stream (function ) | |
fscanf | |
Read formatted data from stream (function ) | |
printf | |
Print formatted data to stdout (function ) | |
scanf | |
Read formatted data from stdin (function ) | |
snprintf | |
Write formatted output to sized buffer (function ) | |
sprintf | |
Write formatted data to string (function ) | |
sscanf | |
Read formatted data from string (function ) | |
vfprintf | |
Write formatted data from variable argument list to stream (function ) | |
vfscanf | |
Read formatted data from stream into variable argument list (function ) | |
vprintf | |
Print formatted data from variable argument list to stdout (function ) | |
vscanf | |
Read formatted data into variable argument list (function ) | |
vsnprintf | |
Write formatted data from variable argument list to sized buffer (function ) | |
vsprintf | |
Write formatted data from variable argument list to string (function ) | |
vsscanf | |
Read formatted data from string into variable argument list (function ) |
字符输入输出函数
Character input/output:
函数 | 描述 |
---|---|
fgetc | |
Get character from stream (function ) | |
fgets | |
Get string from stream (function ) | |
fputc | |
Write character to stream (function ) | |
fputs | |
Write string to stream (function ) | |
getc | |
Get character from stream (function ) | |
getchar | |
Get character from stdin (function ) | |
gets | |
Get string from stdin (function ) | |
putc | |
Write character to stream (function ) | |
putchar | |
Write character to stdout (function ) | |
puts | |
Write string to stdout (function ) | |
ungetc | |
Unget character from stream (function ) |
5 头文件ctime
#include<ctime>
函数 | 描述 |
---|---|
char *asctime(const struct tm *timeptr) | 返回一个指向字符串的指针,它代表了结构 timeptr 的日期和时间。 |
clock_t clock(void) | 返回程序执行起(一般为程序的开头),处理器时钟所使用的时间。 |
struct tm *gmtime(const time_t *timer) | timer 的值被分解为 tm 结构,并用协调世界时(UTC)也被称为格林尼治标准时间(GMT)表示。 |
struct tm *localtime(const time_t *timer) | timer 的值被分解为 tm 结构,并用本地时区表示。 |
time_t mktime(struct tm *timeptr) | 把 timeptr 所指向的结构转换为一个依据本地时区的 time_t 值。 |
size_t strftime(char *str, size_t maxsize, const char *format, const struct tm *timeptr) | 根据 format 中定义的格式化规则,格式化结构 timeptr 表示的时间,并把它存储在 str 中。 |
time_t time(time_t *timer) | 计算当前日历时间,并把它编码成 time_t 格式。 |