c-preprocessor 相关问题

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

限制#include仅搜索当前目录

#include按照惯例使用引号和尖括号来指示预处理器是否应在系统头目录之前搜索当前目录。假设您只想搜索...

回答 2 投票 4

#include包含指定路径

#include按照惯例使用引号和尖括号来指示预处理器是否应在系统头目录之前搜索当前目录。假设您只想搜索...

回答 2 投票 4

用C中的#define正确放置事物还是在其前后留空格?

据我所知,在C语言中,C预处理程序替换了#define中的文字。但是现在,我看到了,它在前后都有空格。是我的解释正确还是我在做...

回答 2 投票 2

追加到预处理器宏中的ostream

我想用自定义定义来模仿广泛的BOOST_LOG_TRIVIAL,该自定义定义使用std :: cout代替。 //使用// g ++构建-std = c ++ 14 -Wall -pedantic -g -O0 -DBOOST_LOG_DYN_LINK -c log.cpp // g ++ log.o -...

回答 1 投票 0

如何将宏参数插入C ++处理器变量中?

我想使用宏将参数传递给变量名称。例如,我将具有以下代码:#define FOO(I,J)double varIJiable FOO(1,2);预处理器将输出以下内容:...

回答 1 投票 0


如何使用C语法在一行中重新定义宏常量?

我想在我的C源代码中的特定条件下重新定义宏常量的值。我无法使用条件预处理指令来定义LEN_OSG,因为它是否是...

回答 2 投票 -1

c标头卫队被忽略了吗?

为什么gcc在这个简单的测试程序中会忽略这些标头防护?头文件是:#ifndef MYHEADER_H #define MYHEADER_H#警告“声明的头” int some_int = 0; #endif和两个.c ...

回答 3 投票 0

GCC预处理程序如何用空行替换#define

我正在尝试将GCC预处理程序与Javascript源代码一起使用。我想保持原始源和输出之间的行号相同。这样,如果...

回答 1 投票 0

C预处理程序或C ++魔术可以自动为每个文件创建对象?

我有一个函数,可能需要根据调用它的文件来修改其行为(例如,增加调试跟踪输出)。无需重新编译即可完成此修改(e ....

回答 2 投票 2


嵌套的FIRST_ARG宏

我正在使用C宏,但我无法理解下面介绍的问题。 #define FIRST_ARG(N,...)N #define FIRST_ARG_EXPANDED(N,...)FIRST_ARG(N,__VA_ARGS__)#define ELEMENTS(DEF,...)DEF(...

回答 1 投票 0

迭代预处理器定义并处理它们

我正在尝试建立一个宏#define F(...)???它将以下结构扩展#define A 1 #define B 2 #define C 3 #define D 4 F(A,B,C,D)变为以下代码:1,“ A”,2,“ B”,。 ..

回答 1 投票 0

__LINE__宏相对于功能开始的位置

在C / C ++中,是否有一个宏会告诉我相对于在其中找到该宏的函数的开头而不是相对于文件的开头的行号?

回答 1 投票 2

我如何编写适当的include并在C语言中调制我的应用程序?

我再次寻求您的帮助:)在#includes中找不到错误,经过多次检查,并与geekstogeeks示例和类似问题进行了比较。所以我得到:/tmp/ccWUaJkV.o:/ ...

回答 1 投票 1

C / C ++预处理程序是否可以检测某些编译器选项?

我有一个带有静态int的函数include [MAX_NODE_NUMBER] [MAX_NODE_NUMBER] [MAX_NODE_NUMBER * MAX_NODE_NUMBER];计算的静态布尔值[MAX_NODE_NUMBER] [MAX_NODE_NUMBER] [MAX_NODE_NUMBER * MAX_NODE_NUMBER] = ...

回答 1 投票 0

类函数的宏和变量

出于某些难以理解的原因,在我的代码中,我有类似以下内容的代码:#define pippo(x)printf(“%d”,x)... ...代码中的许多行... int pippo = 0;相同的标识符pippo已用于...

回答 2 投票 1

用宏替换其参数中的标识符

我需要一个宏,该宏将作为参数传递给它的代码中的一个标识符替换为另一个标识符。要解决我的任务,只需定义REPLACE_X_WITH_Y即可使此代码编译:#define ...

回答 1 投票 2

#include 导致错误

我正在尝试使用windows.h头文件中的GetTickCount()。现在,我的代码如下所示:#include #include #include“ declarations.h” #define INPUTBUFFER ...

回答 1 投票 1

用于在C中将符号与变量值连接在一起的预处理器指令

这是在C中完成符号连接的方式。#define conc(a,b)a ## b例如:conc(hello,World)将使符号helloWorld。我需要知道的是有些不同。假设有一个变量n ...

回答 4 投票 1

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