Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
定义一个断言,即使定义了 NDEBUG,该断言也有效
我想定义一个assert与标准相同的宏assert 3 http man7 org linux man pages man3 assert 3 html调用 但它不会被预处理器删除NDEBUG被定义为 这样的呼唤 让我们称之为assert2
c
cpreprocessor
assert
对c中宏SQR的平方感到困惑[重复]
这个问题在这里已经有答案了 这个问题是在模拟面试中问我的 真的很惊讶地发现尴尬的答案 考虑一个宏 define SQR x x x 示例1 SQR 2 prints 4 示例2 如果给出 SQR 1 1 则它不会求和 1 1 to 2反而
c
macros
cpreprocessor
“#define for if (false) {} else for”的可能用途是什么?
在另一个问题中 我刚刚发现了这个小珍珠C wisdom define for if false else for 这导致 MSVC 对于一个相当有效的语句发出 常量表达式 警告 for int i 0 i lt 10 i 我明白whyMSV
c
cpreprocessor
C 预处理器中的宏评估
我想做这样的事情 define NUM ARGS 2 define MYMACRO0 no args define MYMACRO1 one arg define MYMACRO2 two args define MYMACRO num M
c
cpreprocessor
如何根据“配置管理器”创建自己定义的常量?
当我选择 调试 配置时 DEBUG常数处于活动状态 当我选择 释放 配置时 DEBUG常量处于非活动状态 我如何创建自己的配置 以便它们包含我自己定义的常量 基本上 我想要这样 如果我选择配置 FOOBAR 就会有一个常量FOO and B
VisualStudio
configuration
constants
cpreprocessor
为什么大多数 C 开发人员使用 Define 而不是 const? [复制]
这个问题在这里已经有答案了 在许多程序中 define与常量具有相同的用途 例如 define FIELD WIDTH 10 const int fieldWidth 10 我通常认为第一种形式优于另一种形式 它依赖于预处理器来处理基本上是
c
codingstyle
cpreprocessor
结合 C++ 和 C - #ifdef __cplusplus 如何工作?
我正在从事一个有很多遗产的项目C代码 我们已经开始使用 C 进行编写 目的是最终转换遗留代码 我有点困惑如何C和C 交互 我明白 通过包装C代码与extern C C 编译器不会破坏C代码的名称 但我不完全确定如何实现它 所以 在每个的顶部
c
cpreprocessor
externc
C 预处理器库
我的任务是开发源分析工具C程序 并且我需要在分析本身之前预处理代码 我想知道什么是最好的图书馆 我需要一些重量轻 便于携带的东西 与其推出自己的 为什么不使用cpp这是的一部分gcc suite http gcc gnu org onlin
c
cpreprocessor
C 预处理器宏不解析逗号分隔的标记?
我想根据参数的数量选择两个函数之一 nargs 0 gt f1 nargs gt 0 gt f2 宏执行以下操作 获取第一个参数 如果没有提供参数 则会添加两个逗号 NULL NULL 然后它会从返回的参数列表中选择第二个参数 例如 f H
c
macros
cpreprocessor
C99
variadicmacros
在 C 语言中替换宏内的宏
我正在尝试使代码部分可重用 我下面的评论片段没有达到我想要的效果 define NAME ABC define LOG SIZE NAME LEN 我想LOG SIZE决心ABC LEN 我尝试过使用 但没能让它发挥作用 LOG SIZE在
c
macros
cpreprocessor
preprocessordirective
包含目录中的所有文件?
如何实现以下代码想要实现的目标 include dir In Bash HEADER all headers h echo ifndef ALL HEADERS gt HEADER echo define ALL HEADERS gt gt
c
directory
include
cpreprocessor
#define, #ifdef #undef #endif
我有以下代码 define PROC ADD void main void while 1 ifdef PROC ADD Do this code here then undefined it to run the code in the
c
visualstudio2008
cpreprocessor
preprocessordirective
使用另一个宏(c 预处理器)生成宏的名称[重复]
这个问题在这里已经有答案了 我可以使用宏生成函数的名称 该宏取自生成函数名称的 C 预处理器定义 https stackoverflow com questions 1253934 c pre processor defining for
c
macros
cpreprocessor
Objective-C 字符串文字的预处理器宏值
我在构建设置中定义了一个预处理器宏 FOO BAR 我想将该值转换为可以传递给方法的 Objective C 字符串文字 以下 define 不起作用 但它应该展示我想要实现的目标 define FOOLITERAL FOO want FO
Objectivec
cocoa
cocoatouch
cpreprocessor
stringification
#elif 定义时不带括号
使用 VS2005 和 BLAH BLAH 定义以下预处理器条件为 false elif defined BLAH BLAH 但如果我把它改成 elif defined BLAH BLAH 是真的 为什么括号在这里会有所不同 它应该没有任何
c
visualstudio2005
cpreprocessor
如何驯服 Windows 标头(有用的定义)?
在其中一个答案中this https stackoverflow com questions 1394132 macro and member function conflict问题jalf https stackoverflow com
c
Windows
macros
cpreprocessor
C/C++ 代码的预处理器指令 #ifndef
在 Eclipse 中 每当我创建一个新的 C 类 或者C头文件中 我得到以下类型的结构 假设我创建头文件 example h 我得到 Comments ifndef EXAMPLE H define EXAMPLE H Place to
c
eclipse
cpreprocessor
#pragma pack(16) 和 #pragma pack(8) 的效果总是相同吗?
我正在尝试使用来对齐数据成员 pragma pack n http msdn microsoft com en us library 2e70t5y1 28v vs 100 29 aspx 以下面为例 include
c
cpreprocessor
memoryalignment
pragma
preprocessordirective
允许使用什么类型的内容作为 C 预处理器宏的参数?
老实说 我很了解 C 编程语言的语法 但对 C 预处理器的语法几乎一无所知 尽管我有时在编程实践中使用它 所以问题来了 假设我们有一个简单的宏 它扩展为空 define macro param 可以放入宏调用构造中的语法有哪些限制 调用宏时
c
cpreprocessor
在 C 或 C++ 中使用逗号作为宏名称
我想做这样的事情 define define MAX 10 000 000 undef 有什么技巧可以做到吗 编辑 我知道 C 14 中的数字分隔符 我正在寻找一种技巧来对不兼容的编译器执行相同的操作 EDIT2 请考虑Variadic M
c
cpreprocessor
1
2
3
4
5
6
...20
»