我有一个这样的程序:
int main(){
char c;
int i; /* counter */
double d;
return 0;
}
如果我想注释掉带有
char
、int
和 double
的行,并且仅取消注释 return 0;
,我可以这样做吗?已经存在的评论会停止评论。
有没有一种简单/快速的方法来注释掉它?
int main(){
#if 0
char c;
int i; /* counter */
double d;
#endif
return 0;
}
严格来说不是评论,但效果就是你想要的,而且很容易恢复。
这也可以很好地扩展到更大的代码块,特别是如果您有一个可以匹配
#if..#endif
的开头和结尾的编辑器。
int main(){
/*
char c;
int i; // counter
double d;
*/
return 0;
}
如果您的编译器支持注释的
//
表示法(C 中非标准,但非常普遍支持),请使用可以使用这些符号切换整个行块的编辑器。
在C99中
int main(){
// char c;
// int i; /* counter */
// double d;
return 0;
}
我偏爱:
int main(){
#ifdef USE_DISABLED_CODE
char c;
int i; /* counter */
double d;
#endif
return 0;
}
使用简洁的名称,例如“CODE_REMOVED_FOR_TESTING_PURPOSES”或“REMOVED_FROM_E3_BUILD”,并且不要定义它,并且您已经为自己留下了关于代码被禁用的原因的简洁注释(如果您在所有文件中查找,则会显示该注释) #ifdef)。
有很多编辑器/IDE 支持使用热键注释/取消注释。这是一个非常有用的功能。 在 Kate/KDevelop 中,热键是 Ctrl+D。
这也在THIS问题中进行了描述(以及支持此功能的其他 IDE)。