+ -
当前位置:首页 → 问答吧 → 共享代码,删除源代码中的空行,//注解 ,代码行前空

共享代码,删除源代码中的空行,//注解 ,代码行前空

时间:2011-12-07

来源:互联网

C/C++ code

#include<stdio.h>

#include<string.h>
#include <ctype.h>

int main()
{

    char line[255]; // 读取一行 字符串
    char *ps;
    FILE *input = fopen("main.c", "r"); // 读取当前文件mian.c

    while(fgets(line, 255 , input)) {   // 读取每一行
        if(line[0] == '#')              // 不想输出 # 预处理语句
            continue;

//     if(strlen(line) > 1) {           // 输出不是空行

            // 不想输出注解
            if( ps = strstr( line, "//" )) {
                *ps = '\n';
                *(ps+1) = '\0';
            }

            // 不想输出当前行前面的空格
            ps = line;
            while(isspace(*ps))  // 如果某行都是空格,就不输出了
                ps++;

            fputs( ps , stdout);

    }
    return 0;

}




还想添加 删除 C风格注解 /* .... */
不知道能否简单实现,如果不行就 用正则表达式完成了

作者: hongwenjun   发布时间: 2011-12-07

怎么不做个删除行尾的空格?
行首的空格其实不用删的。

作者: zjs100901   发布时间: 2011-12-07