Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
#ifdef MACRO 相当于注释吗
假设 MACRO 没有定义 这些是等价的 ifdef MACRO Not valid C or C code endif Not valid C or C code 在 GCC 4 7 1 中 它似乎是等效的 但是否有预处理器可以做更多的事
c
comments
cpreprocessor
conditionalcompilation
为什么要在项目中使用#include_next?
引用iOS有关包装器标头的文档 http developer apple com library ios documentation DeveloperTools gcc 4 0 1 cpp Wrapper Headers html inc
gcc
include
cpreprocessor
列出 C 常量/宏
有没有办法使GNU C 预处理器 cpp 或其他一些工具 列出给定点上的所有可用宏及其值C file 我正在寻找特定于系统的宏 同时移植一个已经精通 UNIX 的程序并加载一堆稀疏的 UNIX 系统文件 只是想知道是否有比寻找定义更简单的方
c
gcc
cpreprocessor
根据模板参数更改member-typedef?
我在这里遇到这个问题 我不知道如何解决 我想要一个模板类 它采用整数作为模板参数 并相应地为另一个类设置模板参数 template
c
templates
cpreprocessor
C 预处理器字符串化怪异
我正在定义一个宏 该宏的计算结果为常量字符串 保存文件名和行号 用于记录目的 它工作正常 但我只是不明白为什么需要 2 个额外的宏 STRINGIFY and TOSTRING 当直觉简单地表明 FILE LINE include
c
cpreprocessor
stringification
哪些用例需要 #define 而不使用令牌字符串?
我遇到过 define预处理器指令之前在学习C时 然后在我读过的一些代码中也遇到过它 但除了使用它来明确替换常量和定义宏之外 我还没有真正理解它在没有 主体 或标记字符串的情况下使用的特殊情况 以这一行为例 define OCSTR X 就
c
cpreprocessor
编译时检查函数是否使用/未使用 C++
我想在编译时检查是否有某些函数某堂课使用 未使用 相应地使编译过程失败 通过 例如如果函数F1在代码中的某处调用我希望编译成功 并且 if 函数F2称为我希望它失败 关于如何使用预处理器 模板或任何其他 C 元编程技术来做到这一点 有什么想
c
templates
cpreprocessor
metaprogramming
codegeneration
错误:没有这样的文件或目录 - C
解读完这个之后comment https stackoverflow com questions 41281332 code directory structure library design comment69813504 412816
c
cpreprocessor
无与伦比的括号宏怪异
根据 C99 规则预处理以下 3 行的正确输出是什么 define y x x define x a y a x 1 x 2 顺便说一句 linux 下的 cpp 会产生错误消息 但我不明白为什么答案不简单 1 2 假设 cpp 是正确的而
c
macros
cpreprocessor
我可以在调用者处将函数参数默认为 __FILE__ 的值吗?
在 C 中 我可以为函数提供一个默认参数吗 PRETTY FUNCTION FILE and LINE 在调用者处定义 而不是在不使用宏的情况下在头文件中提供默认值的地方 您不能 但您可以通过附加宏来实现此行为 例如 DEFINE THRO
c
cpreprocessor
optionalarguments
宏展开错误
我一直在尝试理解宏扩展 发现第二个 printf 给出了错误 我期望第二个打印语句生成与第一个打印语句相同的输出 我知道有一些函数可以进行字符串连接 我发现很难理解为什么第一个打印语句有效而第二个则无效 define CAT str1 st
c
cpreprocessor
GCC/CLANG 与 MSVC 的预处理器之间有何差异?
以下预处理器宏 通常的嫌疑人 测试空参数列表并计算参数数量 在 gcc clang 上运行时没有警告 但在 Microsoft VisualC 上失败 IS EMPTY returns nothing if the parameter li
c
macros
cpreprocessor
preprocessor
无法在 C++ 中使用宏定义类
我想生成许多几乎没有什么区别的子类 所以我想使用宏来简化我的工作 宏定义如下 define DECLARE SUB CLASS sub class name base class name value1 class sub class na
c
class
macros
cpreprocessor
#define 导致“预期的主表达式”错误
define N 10 int main int x for int i 0 i
c
cpreprocessor
用于累积逗号分隔字符串的 C++ 预处理器宏
我需要执行以下操作 const char my var Something REGISTER my var const char my var2 Selse REGISTER my var2 concst char all OUTPUT R
c
cpreprocessor
避免 C 错误处理中的重复
我经常编写最终成为长序列的代码 例如 int error error do something if error return error error do something else with some args if error re
c
gcc
errorhandling
cpreprocessor
为什么主要编译器对 stdint.h 使用 typedef 而对 stdbool.h 使用 #define?
我刚刚注意到 gcc 和 clang 似乎都对 stdint h 使用 typedef 但对 stdbool h 使用 define 例子 clang 的 stdint h https clang llvm org doxygen stdi
c
include
cpreprocessor
languagelawyer
typedef
当我有表面声明时,如何为 sm_1X 和 sm_2X 编译 CUDA 程序
我正在编写一个使用表面 重新采样并写入纹理 来提高性能的库 surface
c
CUDA
macros
cpreprocessor
nvcc
多遍 C 预处理器 [关闭]
Closed 这个问题是基于意见的 help closed questions 目前不接受答案 应用该方法是否明智 C多次对同一代码库进行预处理 具体来说 依次两次 例如 具有如下声明 define DECLARE FILE define
cpreprocessor
ProjectManagement
C 预处理器删除尾随逗号
我有一个这样的宏 define C a char a 0 这适用于非空参数 C a b gt char a b 0 但我想在提供空参数时删除尾随逗号 C gt char 0 这可能吗 至少在 GCC 5 4 0 中 在 Cygwin 上 d
c
gcc
cpreprocessor
1
2
3
4
5
6
...19
»