@TOC
#define NDEBUG //内置开关
#include
int main() {
assert(1==2);
}
static_assert(sizeof(int) == 4, "仅支持64位机器");
字符判断,大小转换等
PRI + 原始占位符 + 类型关键字/宽度的形式构成,如printf("YYY%"PRId8"XXX",222);
if (x > 6 and x < 12)
// 等同于
if (x > 6 && x < 12)
查询、设置数字格式、货币格式、字符集、日期和时间格式等
提供了一些用于处理处理程序运行期间的异常的功能,如处理来源于外部的中断信号或程序执行期间出现的错误等事件,完成信号处理后还可以继续之前任务
#include
#include
void handler(int sig) {
printf("Handler called for signal %d\n", sig);
}
int main() {
signal(SIGFPE,handler);
int a=1/0;//主动被动抛出异常都可以触发上面声明的信号处理handler
//raise(SIGFPE);
}
定义int别名如int32_t,及其转换和极值
包括部分数学计算、字符串数值转换、随机数、程序退出、运行环境OS操作、内存管理、搜索排序等
char* s = u8"春天"
char* s = "\u6625\u5929";
printf("%s\n", s); // 春天
wint_t wc = btowc('A'); int a=sizeof(wc);
将占2或4个字节, 单/多字节字符与宽字符可互转。参考原文