Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/133.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Eclipse如何缩进C++;预处理器的宏语言_C++_Eclipse - Fatal编程技术网

C++ Eclipse如何缩进C++;预处理器的宏语言

C++ Eclipse如何缩进C++;预处理器的宏语言,c++,eclipse,C++,Eclipse,我在eclipse中找不到一个设置,这样我就可以让它自动缩进预处理器宏,就像缩进代码一样。例如,eclipse尝试这样格式化代码 int main() { #ifdef SOMETHING cout << "Something Defined" << endl; #endif return 0; } intmain() { #如果有什么 coutEclipse缩进是正确的。无论周围代码的缩进如何,预处理器指令都应该在最左边的列上。前ANSI C预处理器

我在eclipse中找不到一个设置,这样我就可以让它自动缩进预处理器宏,就像缩进代码一样。例如,eclipse尝试这样格式化代码

int main()
{
#ifdef SOMETHING
     cout << "Something Defined" << endl;
#endif
    return 0;
}
intmain()
{
#如果有什么

coutEclipse缩进是正确的。无论周围代码的缩进如何,预处理器指令都应该在最左边的列上。

前ANSI C预处理器不允许在行首和“#”字符之间留有空格;前导的“#”必须始终放在第一列中

现在不存在ANSI C之前的编译器。请使用您喜欢的样式(在“#”之前的空格或在“#”和标识符之间的空格)

但我建议你这样做:


只需使用“查找/替换”对话框和“全部替换”

我认为没有宏缩进选项。但我看到clangformat似乎有宏缩进选项,因此您可以自定义自己的clang格式()并将eclipse配置为使用clangformat而不是默认值。

要缩进您可能需要使用的预处理器。它的格式化程序不考虑序言。

像其他人已经指出的那样,编译器指令
#
必须从第一列开始才能符合标准。不过,允许在后面加空格因此,我的首选解决方案如下所示,这样就不再是eclipse问题了

int main()
{
#  ifdef SOMETHING
     cout << "Something Defined" << endl;
#  endif
}
intmain()
{
#如果有什么

很好,我知道我可以重复所有内容,但这有点烦人,因为我必须在每一行之后这样做,因为当我键入#时,编辑器会自动删除我的缩进。+1因为我查阅了标准。考虑到Eclipse的疯狂复杂性及其设置,这也让我很恼火如果我们真的想……任何客观原因,让我们缩进一些东西?“它更突出,我发现它应该突出。”?甚至有一个插件集成了clang format作为Eclipse的替代代码格式化程序:,我知道。不过,我不会仅仅因为这个小原因而切换到netbeans。你是对的,但我这样做是为了跳过时间,至少在截止日期前提交,我相信有一种方法可以“说服”eclipse阅读缩进宏的配置。
int main()
{
#  ifdef SOMETHING
     cout << "Something Defined" << endl;
#  endif
}