又一年即将结束,是时候盘点一下开源项目中的 Bug 了。2020 年的盘点可能还需要点时间,本文我们先来看看 2019 年开源 C/C++ 项目中遇到的一些最有趣的槽点。 No. 10. 我们正运行在什么操作系统上? V1040 可能拼写错误预定义宏名称。’MINGW32_‘有点儿像’MINGW32 ...
分类:
编程语言 时间:
2020-11-13 12:47:36
阅读次数:
9
Makefile的介绍与使用(一)中,我简单总结了一下关于子目录下的Makefile的一些运用,而这次的Makefile的介绍与使用(二)中,就对Makefil顶层目录进行一个剖析,简单分析一下Makefile的构造。 就拿最近做的hello目录下的Makefile为示例 include $(TOP ...
分类:
其他好文 时间:
2020-08-24 16:40:34
阅读次数:
54
很好奇 touchgfx 的 visual stdio 工程路径中符号 $(TouchGFXReleasePath),经查这就是一个宏替换 自定义宏 ...
分类:
其他好文 时间:
2020-07-18 22:58:46
阅读次数:
106
1. 概述 1. VIM 宏的存储 2. 背景 1. 之前学过一点宏 1. 查看 2. 录制 3. 导出 2. 问题: 编辑这块并不是很好 1. 操作打不出来 1. 插入模式下的 CTRL + A 2. EX 命令行下的 CTRL + A 2. CTRL 类的快捷键 如果打不出来, 会很尴尬... ...
分类:
系统相关 时间:
2020-04-29 23:11:27
阅读次数:
129
宏定义在C类语言中非常重要,因为宏是一种预编译时的功能,因此其可以比运行时更高层面的对程序流程进行控制。在初学宏定义的时候,大家可能都会有这样一种感觉:就是完全替换么,太简单了。但如果你真这么想,那你就太天真了,不说自己编写宏,在Foundation框架中内置定义的许多宏要看明白也要费一番脑筋。本篇 ...
分类:
移动开发 时间:
2020-04-28 14:57:44
阅读次数:
56
条件编译 1.好处 缩短编译和运行的时间,减轻负担 2.条件编译的条件只能是常量,因为条件编译是预处理命令,变量时候来定义的 #include<stdio.h> //#define DAXIE 0 //定义宏定义 void f1(void); void f2(void); //声明函数 void f ...
分类:
其他好文 时间:
2020-04-04 22:43:58
阅读次数:
97
因为有时会使用到一行中某部分代码需要注释,每次都去输入感觉太麻烦了所以根据网上资料自己修改的在source insight 自定义宏 用/* */注释一行鼠标选中部分代码,如果选中部分代码已经使用/* */注释则取消注释。 macro CommentSelStr() { hbuf = GetCurr ...
分类:
其他好文 时间:
2020-02-24 23:54:29
阅读次数:
135
(1)类型的 安全性检查 :const常量有 数据类型 ,而define定义宏常量没有数据类型。则编译器可以对前者进行类型安全检查,而对 后者只进行字符替换 ,没有类型安全检查(字符替换时可能会产生意料不到的错误,如上面的程序所示); (2)调试:部分调工具可以对const常量进行调度,但不能对宏常 ...
分类:
其他好文 时间:
2020-02-23 09:18:57
阅读次数:
56