#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[N];
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);
}
删除代码中的注释
最新推荐文章于 2023-04-24 15:36:17 发布