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

删除代码中的注释

2013-07-03 17:04 274 查看
#define N 1024
void delete_notes(char infilename[],char outfilename[])
{
FILE* infp = fopen(infilename, "r+");
FILE* outfp = fopen(outfilename, "w+");

int flag = 0, flag1 = 1;
char ch, nch, str
;
while(!feof(infp))
{
ch = fgetc(infp);
if(!flag)
{
if(ch == '/')
{
nch = fgetc(infp);
if(nch == '*')
flag = 1;
else if(nch == '/')
{
flag1 = 0;
fgets(str,N,infp);
fputs("\n",outfp);
}
else
{
ungetc(nch,infp); //若还不是注释,退格一个字符
}
}
}
if((!flag) && flag1)
{
if(ch!= EOF)
fputc(ch, outfp);
}
flag1 = 1;
if(flag)
{
if(ch == '*')
{
nch = fgetc(infp);
if(nch == '/') //出现了“*/”,注释结束
{
flag = 0;
}
else
{
ungetc(nch, infp); //若还是注释,则要退格一个字符
}
}
}
}
fclose(infp);
fclose(outfp);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C 注释