#部分库函数说明
- <assert.h>
断言机制
assert(Statement); //如果为真,继续执行,反之报错。
- <errno.h>
错误机制
strerror(errno); //errno通过系统系统调用设置,全局整数变量。
- <setjmp.h>
非本地跳转(错误处理、异常处理、中断控制流)
jmp_buf environment; //保存环境
setjmp(environment); //将环境保存在environment中 返回0
longjmp(environment,value); //恢复setjmp保存的环境,返回value(非零)
- <signal.h>
信号处理
signal(SIGINT,handle_sigint); //SIGINT被捕获的信号(ctrl+c) handle_sigint信号处理函数
- <stdarg.h>
访问可变数量的参数
va_list args; //存储可变参数类型
va_start(args, count); //初始化args count为第一个参数
va_arg(args, int); //访问可变参数 int为count类型
va_end(args); //清理args
- <stdlib.h>
srand(time(NULL)); //随机数种子
rand()%100; //[0-100) (不推荐)
int random = (int)n*(rand()/((RAND_MAX)+1.0f)); //n是放大倍数[0-n*1)