C预处理器和C库
#define #include #undef #ifdef #else #endif
#if #elif #else #endif
预处理宏: p463 _ _fun_ _是预定义标识符(函数作用域),不是宏(文件作用域)
#line --重置_ _LINE_ _和_ _FILE_ _宏报告的行号和文件名 #error
#pragma --将编译器指令置于源代码中
内联函数 inline --减少执行的时间
函数库 、数学库 略...
exit() atexit()
exit()执行了atexit()指定的函数后(先执行最后添加的文件),
将做一些自身清理的工作,它会刷新所有输出流、关闭所有打开的流、关闭通过调用标准I/O函数tmpfile()创建的临时文件
qsort()最有效的排序算法之一
void*指针赋给一个指针或另一个类型的时候,c++需要一次强制类型转化,c不用
诊断库:assert.h中的assert()--标识出程序中某个条件应为真的关键位置 , 在assert.h前添加#define NDEBUG 可以把它禁用了
string.h库中memcpy()与memmove()用于字符之间进行整体复制,不会进行字符转换
可变参数:stdarg.h va_start() va_arg() va_end() va_copy();
C预处理器和C库的更多相关文章
- C Primer Plus之C预处理器和C库
编译程序前,先由预处理器检查程序(因此称为预处理器).根据程序中使用的预处理器指令,预处理器用符号缩略语所代表的内容替换程序中的缩略语. 预处理器不能理解C,它一般是接受一些文件并将其转换成其他文本. ...
- C Primer Plus--C预处理器和C库(2)
目录 #include指令 头文件 其他指令 #undef 条件编译 内联函数 #include指令 #include <头文件.h>//在标准系统目录中寻找头文件 #include &q ...
- C Primer Plus--C预处理器和C库(1)
目录 预处理符号 明显常量 #define 编译程序之前,先由预处理器检查程序(因此称为预处理器).根据程序中使用的预处理器指令,预处理用符号缩略语所代表的内容替换程序中的缩略语. 预处理器可以根据你 ...
- 第 16 章 C 预处理器和 C 库(可变参数:stdarg.h)
/*------------------------------------------------- varargs.c -- use variable number of arguments -- ...
- 第 16 章 C 预处理器和 C 库(string.h 库中的 memcpy() 和 memmove())
/*----------------------------------------- mems.c -- 使用 memcpy() 和 memmove() ---------------------- ...
- 第 16 章 C 预处理器和 C 库(qsort() 函数)
/*---------------------------------------- qsorter.c -- 用 qsort() 排序一组数字 --------------------------- ...
- 第 16 章 C 预处理器和 C 库(直角坐标转换极坐标)
/*------------------------------------- rect_pol.c -- 把直角坐标转换为极坐标 ---------------------------------- ...
- 第 16 章 C 预处理器和 C 库(预定义宏)
/*------------------------------------- predef.c -- 预定义宏和预定义标识符 ------------------------------------ ...
- 第 16 章 C 预处理器和 C 库(条件编译)
/*-------------------------------------- names_st.h -- names_st 结构的头文件 ----------------------------- ...
随机推荐
- 对[UIApplication sharedApplication]理解
[ sharedApplication]返回UIApplication * application = nil; +(UIApplication*) shareApplication{ if(appl ...
- java开发常用jar包
mail.jar与activation.jar 里面包含了activation.jar和mail.jar两个包.通过里面的类的调用便可以达到发送电子邮件的目的 commons-beanutils.ja ...
- 利用神经网络算法的C#手写数字识别
欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 下载Demo - 2.77 MB (原始地址):handwritten_character_recognition.zip 下载源码 - 70. ...
- zabbix自动清理30天前的数据
转:http://www.361way.com/delete-zabbix-histroy-data/3826.html zabbix属于一个细度化的监控工具,其入库数据随着细度的增加相应的入库数据量 ...
- mybatis-databaseIdProvider多数据库支持
<select id="selectPerson" parameterType="int" parameterMap="deprecated&q ...
- scrapy_全站爬取
如何查询scrapy有哪些模版? scrapy genspider –list 如何创建crawl模版? scrapy genspider -t crawl 域名 scrapy genspider - ...
- $(window).scroll在页面没有滚动条时无法触发事件的bug解决方法
JS //给页面绑定滑轮滚动事件 if (document.addEventListener) { //webkit document.addEventListener('mousewheel', s ...
- Shell 批量复制文件名相近的文件到指定文件名中
问题: 目录结构如下: test/ 2001.01.01/ 2001.02.02/ 2001.03.02/ 2001.01.03/ 2001.02.04/ 2001.03.05/ 2 ...
- awk批量处理文件夹中所有文件
#c=`` done
- awk脚本使用的几种方法
1. awk名包含在文件内 [root@nhserver1 08]# cat sample.txtaaabbbccc [root@nhserver1 08]# cat readsample.awkaw ...