我有一个像这样的程序
int main(){
char c;
int i; /* counter */
double d;
return 0;
}
如果我想注释掉 char、int 和 double,只保留 return 未被注释,我能做到吗?已经存在的注释会阻止注释的效果。
有没有一种简单且快捷的方法来注释掉它们?
int main(){
#if 0
char c;
int i; /* counter */
double d;
#endif
return 0;
}
虽然不是严格的注释,但这个方法可以实现你想要的效果,并且很容易撤销。
如果你有一个可以匹配#if..#endif
开始和结束的编辑器,这种方法在处理更大的代码块时也很有效。
/*...*/
)可以嵌套。 - pmggcc
下启用 -Wundef
选项时),否则 FALSE
不是标准预定义的宏之一,可能会导致某些编译器发出警告。 - Blrflint main(){
/*
char c;
int i; // counter
double d;
*/
return 0;
}
在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,这个注释将会显示出来)。
//
符号(在C语言中不是标准用法,但是很常见),请使用能够切换整个代码块的编辑器。有很多编辑器/IDE支持使用热键进行注释/取消注释。这是一个非常有用的功能。 在Kate/KDevelop中,热键是Ctrl+D。
这个功能也在此问题中描述(以及其他支持此功能的IDE)。
//
来添加单行注释。因此,可以这样写:// counter
,如果要注释多行,也可以用/*...*/
将块注释起来。 - Felix Kling