您的位置:首页 > 编程语言 > C语言/C++

编写一个删除c语言程序文件中所有的注释语句

2015-03-04 20:36 471 查看
//删除c语言程序中所有的注释语句,要正确处理带引号的字符串与字符串常量
#include <stdio.h>
using namespace std;
#define MAXLINE 1000

void rcomment(int c);
void in_comment(void);
void deleteTail(void);
FILE* fp;
FILE* fp2;

int main()
{
fp=fopen("C:\\Users\\Administrator\\Desktop\\leetcode.cpp","r");
fp2=fopen("C:\\Users\\Administrator\\Desktop\\out.txt","w");
bool deleteMutiline=false;
char line[MAXLINE];
int c;
while((c=getc(fp))!=EOF)
rcomment(c);
return 0;
}
void rcomment(int c){
int d;
if(c=='/'){
if((d=getc(fp))=='*')
in_comment();
else if (d=='/')
deleteTail();
else
{
putc(c,fp2);
putc(d,fp2);
}
}else
putc(c,fp2);
}
void in_comment(void){
int c,d;
c=getc(fp);
d=getc(fp);
while (c!='*'||d!='/')
{
c=d;
d=getc(fp);
}
}
void deleteTail(){
int c;
c=getc(fp);
while (c!='\n')
{
c=getc(fp);
}
putc('\n',fp2);
}


涉及标准库中的文件操作函数getc和putc,从文件中读单个字符,写单个字符到文件中。

以及文件结构FILE。

具体思路:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐