C: macro: 去除宏的实用工具unifdef
https://github.com/fanf2/unifdef
https://stackoverflow.com/questions/525283/is-there-a-c-pre-processor-which-eliminates-ifdef-blocks-based-on-values-define
这个是一个非常有用的工具。尤其是对老项目,而且代码还量大的项目。有些不需要的代码的清理也是一项主要的工作。原因就是让代码看起来整洁,比如对于现在已经不流行架构的特殊代码:pSOS、PPC。
usage: unifdef [-bBcdehKkmnsStV] [-x{012}] [-Mext] [-opath] \[-[i]Dsym[=val]] [-[i]Usym] [-fpath] ... [file] ...-Dsym=val define preprocessor symbol with given value-Dsym define preprocessor symbol with value 1-Usym preprocessor symbol is undefined-iDsym=val \ ignore C strings and comments-iDsym ) in sections controlled by these-iUsym / preprocessor symbols-fpath file containing #define and #undef directives-b blank lines instead of deleting them-B compress blank lines around deleted section-c complement (invert) keep vs. delete-d debugging mode-e ignore multiline preprocessor directives-h print help-Ipath extra include file path (ignored)-K disable && and || short-circuiting-k process constant #if expressions-Mext modify in place and keep backups-m modify input files in place-n add #line directives to output-opath output file name-S list #if control symbols with nesting-s list #if control symbols-t ignore C strings and comments-V print version-x{012} exit status mode
./a.out -U_DSOS -U_SOLARIS -B -e a.c -o tmp.c
将_DSOS 和_SOLARIS相关的定义的代码删除,然后转存到tmp.c。-B是要删除行。
C: macro: 去除宏的实用工具unifdef相关推荐
- LaTeX配置及实用工具汇总
文章目录 1. 教程 2.主要工具和环境 3.实用工具 5.Jupyter Lab和LaTeX 1. 教程 教程我没管那么多,在网上随便找几个入门的贴子看看,会改一些模板,基本上就可以用了.初学的时候 ...
- c语言 宏定义 去除宏定义_如何检查是否在C中定义了宏?
c语言 宏定义 去除宏定义 To check whether a Macro is defined or not in C language – we use #ifdef preprocessor ...
- dos盘启动计算机,最新万能 DOS 启动盘制作全攻略(软盘+光盘+U盘+硬盘+NTFS+应急实用工具)...
最新万能 DOS 启动盘制作全攻略(软盘+光盘+U盘+硬盘+NTFS+应急实用工具) 更新时间:2006年12月21日 00:00:00 作者: 首先说明一下各种操作系统启动到DOS的途径: WI ...
- 云脉文档管理系统,工作中的实用工具
对于办公人员来说,每天工作中都在不停地产生大量纸质文件,例如各种合同.票据.杂乱的笔记等等.在这个场景下,云脉推出了文档管理系统. 在文字录入方面,采用了先进的OCR文档识别技术,利用光学设备(照相机 ...
- 从业10多年,我总结了这几款程序员必备实用工具
优秀程序员之所以优秀的原因并不一定是他写代码的速度比别人快,而是他解决事情的效率比别人高.副业渠道比别人广,所以提供工作效率的方法并不需要我们样样精通,提高副业收入的办法也不需要我们挖空心思,有时候使 ...
- 十多位IT专家分享他们离不开的实用工具
有一种方式可令你的工作变得简单一些,就是看看其他的IT专家依赖于哪些工具,然后自己试试.Susan Harkins精选出了13位IT专家喜爱的工具清单.这些专家包括了从顾问.程序员到数据库管理员等. ...
- iMeta | 青岛华大范广益组基于共标签测序数据的高质量宏基因组组装工具MetaTrass...
点击蓝字 关注我们 MetaTrass:基于共标签测序数据的人类肠道微生物高质量宏基因组组装工具 https://doi.org/10.1002/imt2.46 RESEARCH ARTICLE ●2 ...
- ESP32 FreeRTOS-调试任务实用工具(4)
提示:好记性不如烂笔头.本博客作为学习笔记,有错误的地方希望指正 ESP32-FreeRTOS序列: ESP32 FreeRTOS-任务的创建与删除 (1) ESP32 FreeRTOS-任务输入参数 ...
- 十多位IT专家分享他们离不开的实用工具 1
日期: 2009年2月4日 作者: Susan Harkins 目录: 10 things 标签: Software, Security, Microsoft SQL Server, Informat ...
最新文章
- 黄聪:如何使用CodeSmith批量生成代码(转:http://www.cnblogs.com/huangcong/archive/2010/06/14/1758201.html)...
- sega+model+3+android,世嘉MODEL2经典老游戏移植登场 追加联网对战
- python怎么做图形界面-图形界面
- centos国内yum源
- Spring Boot-场景启动器
- mysql5.7 skip ssl_MySQL 5.7 的SSL加密方法
- 提高个人执行力的途径
- 敏捷 - #2 原则:欢迎更改要求 ( #2 Agile - Principle)
- ERROR: The environment variable VG_GNU_PACKAGE must be set. Aborting.
- 加密解密(源自Discuz!NT3.1)
- python调整照片
- Listview+DataPager分页
- sql盲注 解决_sql盲注学习笔记
- 伍德里奇计量经济学第六章计算机答案,伍德里奇计量经济学导论计算机习题第六章第13题c_6.13...
- hbase1.2.1配置kerberos
- RocketMQ Message相关命令【实战笔记】
- Python将图片转换为ASCII字符画
- ppt文件太大如何压缩变小?
- 你觉得八部金刚功、八段锦、太极拳这种中国传统养生功法有效吗,请从科学与实践的角度详细阐述...
- Written English-书面-人称代词
热门文章
- Vijos 1010 清帝之惑之乾隆
- Abp 入门教程 Day01
- mysql多表聚合_mysql – 如何在查询多个表时准确使用聚合函数?
- LabVIEW怎样确定控件在显示器坐标系中的位置
- mysql用month()函数取月份时,不足10的前面补0
- php除以100保留两位小数点,php保留两位小数的几种方法介绍
- ACM题目 1012: [编程入门]字符串分类统计
- jQuery checkbox 选中事件小案例.
- 按方位角标注边长lisp_附合与闭合水准测量内业计算
- influxDB查看数据库表