September 1st, 2016

将输入输出抽象为流,预定义标准输入输出和标准错误流:stdin stdout stderrf开头的函数的操作对象是一个流对象FILEs开头的函数操作的对象通常是char *。 - 文件流操作相关:fopen fclose … 主要用于得到和关闭FILE - 格式化输出:fprintf sprintf…特别的printf其实就是fprintf(stdout,...) - 格式化输入:fscanf sscanf…特别的scanf其实就是fscanf(stdin,...) - 字符的输入输出:fgetc fgets fputc fputs…基于字符和行的输入和输出 - 直接输入输出:fread fwrite 基于裸数据的流读写 - 文件的定位操作:fseek… - 错误相关:feof ferror

单字符处理,例如判断字符是否是数字isdigit、是否是大写字符isupper、大小写转化tolower等。

针对字符串char *的处理函数。如:strcpy strlen strncpy strcmp strstr。另外还有mem..系列:memset memcpy memcmp

数学计算:`sin` `pow` `sqrt` `fabs` ## 一些工具函数,用于数字转化(`atoi`)、存储管理(`malloc`)、排序(`qsort` `bsearch`)、系统和环境(`exit` `system` `getenv`) ## 提供`assert`函数用于断言 ## 可变参数:`va_list` `va_start` `va_arg` `va_end` ## `setjmp`和`longjmp`提供一种非正常的程序执行流程,主要用于实现`try` `catch` ## 提供`signal`和`raise`用于注册系统信号处理函数和触发信号。例如: - SIGABRT:`abort`调用触发 - SIGFPE:算数运算错误,比如除以0、溢出 - SIGILL:非法指令 - SIGINT:被interrupt终止 - SIGSEGV:非法内存访问 - SIGTERM:终止程序的请求信号 ## 时间获取、格式化、转化相关:`time` ## 一系列的宏,指示各种整型和浮点型的范围

1块2块也是钱,小额赞助