怎样快速删除一个项目源文件里面的所有
//
/**/
的注释文字?哪位有经验?介绍一下
//
/**/
的注释文字?哪位有经验?介绍一下
解决方案 »
- 关于全局变量,为什么更改不了?
- 请教给界面加皮肤,是用什么原理呀?
- 用MFC写的程序,在别人电脑上运行,总提示缺少DLL文件
- 我写了一个DLL,要导出一个类,这个类是个派生类,结果总是有问题!!!
- 有没有这样的api函数如何在一个已经建立的一对套接字中,时事监控对方的屏幕?????(用vc开发) 函数,在一个网络聊天程序中,时事监控
- 请问如何用VC修改BIOS设置????
- 动态数组怎样定义?
- 怎样在VC++6.0里嵌入汇编语言?
- 关于Inno Setup安装程序制作中选择安装语言的问题?
- 根据两组一一对应的坐标集合 求坐标的旋转和平移 在线等!
- vc里如何实现reflection
- 超级怪题:怎么我的XP不能telnet到一个服务器的25端口。
// rmcc.cpp
// - remove C/C++ comments
// - assume no nested block comments
// - usage: rmcc <input_file> <output_file>
// Notes
// - this program is provided as is with no warranty.
// - the author is not responsible for any damage caused
// either directly or indirectly by using this program.
// - anybody is free to do whatever he/she wants with this
// program as long as this header section is preserved.
// Created on 2002-08-18 by
// - Roger Zhang ([email protected])
// Modifications
// -
// Last compiled under Linux with gcc-3
//====#include <iostream>
#include <fstream>using namespace std;void parse(ifstream &fin, ofstream &fout)
{
char curr, prev = '\0';
bool comment = false;
bool charLiteral = false;
bool stringLiteral = false; while (fin.get(curr)) {
if (charLiteral) {
fout << curr;
if (curr == '\'' && prev != '\\') { // 'a' ends
charLiteral = false;
}
prev = (prev == '\\' && curr == '\\') ? '\0' : curr;
} else if (stringLiteral) {
fout << curr;
if (curr == '\"' && prev != '\\') { // "string" ends
stringLiteral = false;
}
prev = (prev == '\\' && curr == '\\') ? '\0' : curr;
} else if (comment) {
if (curr == '/' && prev == '*') { /* comment ends */
prev = '\0';
comment = false;
} else { /* comment text */
prev = curr;
}
} else if (prev == '/') {
if (curr == '/') { // end of line comment
fout << '\n';
prev = '\0';
while (fin.get() != '\n');
} else if (curr == '*') { /* comment starts */
prev = '\0';
comment = true;
} else { // normal code
fout << prev << curr;
prev = curr;
}
} else {
if (curr != '/') {
fout << curr;
}
charLiteral = (prev != '\\' && curr == '\'');
stringLiteral = (prev != '\\' && curr == '\"');
prev = (prev == '\\' && curr == '\\') ? '\0' : curr;
}
}
}int main(int argc, char *argv[])
{
if (argc != 3) {
cerr << "Usage:\t" << argv[0] << " <input_file> <output_file>\n";
return 1;
} ifstream fin(argv[1]);
ofstream fout(argv[2]); if (!fin) {
cerr << "Error:\t\"" << argv[1] << "\" - no such file\n";
return 1;
} parse(fin, fout); fin.close();
fout.close(); return 0;
}来自http://www.programmersheaven.com/zone3/cat486/39569.htm
------
8错!多谢我主要是从一个使用者的角度出发,不想编程。
还有其他方便的经验吗?多谢各位..