c-preprocessor 相关问题

C和C ++计算机编程语言的宏预处理步骤。此标记还可用于有关源自或具有相同功能的其他编译器/语言的问题,例如Objective-C或C#中的#directives。

如何避免同名函数和宏定义冲突?

我定义了一个像这样的函数和宏来设置矩阵内部的值: void init_matrix(矩阵 *mat, double ea[], size_t 大小) { for (int i = 0; i < mat->row; i++) 夫...

回答 1 投票 0

我可以使用 Clang 添加包含双引号的文件的搜索路径吗?

我可以使用 Clang 添加包含双引号的文件的搜索路径吗? 例如,假设我有这样的结构: 项目 | |__ 源代码 | | | |_ main.cpp | |__ 包括 | |_ lib.h 一个...

回答 1 投票 0

C 中的预处理器命令算作令牌吗?

我正在阅读有关令牌的内容并计算程序中令牌的数量。 以前我在某处读到预处理器命令不计为令牌。 但是当我在

回答 1 投票 0

用于定义常量的奇怪宏

我在某人的 C 源代码中偶然发现了以下内容: 类型定义结构{ u32 注册; } reg_t; #define _REG(r) ((const reg_t){.reg=(r)}) #定义 REG_A _REG(123) #定义 REG_B _REG(456) ......

回答 1 投票 0

C 预处理器宏和自定义可变参数函数的警告抑制?

我正在尝试创建一类可以使用任意数量和任何类型的参数调用的函数 - 类似于 printf,但有一个关键区别:我想将所有参数转换为

回答 1 投票 0

带有 if 语句的 C 预处理器

我有以下宏: #define IF_TRACE_ENABLED(level) if (IsTraceEnabled(level)) 用户代码应如下所示: IF_TRACE_ENABLED(级别1) { ...一些非常智能的代码 } 重点

回答 4 投票 0

Doxygen 记录所有条件定义

我有一个项目,其中有大量的条件定义,可以使跨平台开发变得更容易。然而,我在说服 Doxygen 提取所有定义时遇到了问题,因为我...

回答 2 投票 0

C 预处理器如何工作,例如处理多个宏?

C 预处理器如何处理多个宏?我在这里和谷歌上也进行了搜索,但我无法理解应该遵循的确切规则。下面的代码: #定义ABC ...

回答 1 投票 0

GCC 预处理器[重复]

可能的重复: 运行 GCC 预处理器 是否有 GCC 选项可以使 GCC 预处理器生成 C 源代码但过滤掉不相关的源代码? 例如,C 文件有 #define

回答 4 投票 0

通过CMake定义预处理器宏

如何通过 CMake 定义预处理器变量? 等效的代码是#define foo。

回答 6 投票 0

我可以通过命令行将预处理器定义传递给资源编译器吗?

我目前正在尝试使用 #ifdef 标签在 Visual C++ .rc 文件中的几个不同的默认图标之间切换。 正在通过命令行创建切换 #define 值的构建...

回答 4 投票 0

GCC 转储预处理器定义

gcc/g++ 有没有办法从命令行转储其默认预处理器定义? 我指的是 __GNUC__、__STDC__ 等。

回答 6 投票 0

如何使用 gcc 在命令行取消定义定义

如何在编译时使用 GCC 取消定义编译器宏?我尝试了 GCC 的一些编译参数,例如 -D,但我看不到“未定义”消息。 #包括 #

回答 6 投票 0

cpp可以生成以hash开头的行吗?

此 c 预处理器 (cpp) 输入: #定义哈希值# #定义 not_hash x 散列 不散列 通过 cpp -P 运行时会产生以下输出: # X cpp 是否有任何输入能够输出一行...

回答 1 投票 0

有没有办法标记在 C++ 中多个位置设置的全局变量?

寻找一种方法,在编译时,如果 c++ 中的多个行设置了特定变量,则标记/抛出错误。即类似的东西 ~特殊~ int a; int main(){ 而(1){ fn1(...

回答 1 投票 0

如何打印功能测试宏

C++20 引入了预定义功能测试宏的概念,允许检查语言和库功能的可用性(请参阅 https://en.cppreference.com/w/cpp/feature_test 中的表格)。 我是

回答 1 投票 0

如何在宏中单引号参数?

我想创建一个 C 预处理器宏,它将单引号引用参数。就像常用的#X一样。 我希望将 Q(A) 扩展为“A”。 我在 Linux 上使用 gcc。 有没有人有...

回答 6 投票 0

检查 X 宏是否为空

我正在尝试构建一个 X 宏,它允许生成一个带有一堆有用函数(例如 .toString())的枚举。我得到的版本可以这样实现: #定义MAKE_ENUM...

回答 1 投票 0

使用 C 预处理器将 int 连接到字符串

我正在尝试弄清楚如何使用 C 预处理器将 #define'd int 连接到 #define'd string。我的编译器是 CentOS 5 上的 GCC 4.1。该解决方案也适用于 MinGW。 我愿意...

回答 3 投票 0

'。'宏参数列表中出现意外,在`#define error(args...)`中

我在 C++ 中使用这个定义来调试我的变量,它在 clion 和 codeblocks 中工作,但在 Visual Studio 22 中不起作用。 错误 C2010 '.':宏参数列表 codeforces 中出现意外 文件名是&

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.