Archlinux
GCC 13.1.1 20230429
2023-07-20 13:34:31 星期四
点击查看代码
#include<stdio.h>
#define TRUE 1
#define FALSE 0
int main()
{
int i, j, sign;
char tmp[100]="";
FILE *fp;
FILE *fp_store; //另创建文件,保存修改
i = j = 0;
sign = TRUE;
fp = fopen( "file.txt", "r" ); //打开读取一个文件
fp_store = fopen( "test.txt", "a" ); //以追加创建一个可写入的空文件
while( fgets( tmp, 100, fp ) != NULL ) //从file.txt中读取一行,最大100字符,存入tmp数组
{
for( i=0; i<100; i++ ){
if( tmp[i]=='/' && tmp[i-1]=='/' ){
tmp[i-1] = '\n'; //判断,并使用,'\n','\0',清空'//'注释
tmp[i] = '\0';
break;
}
if( tmp[i] =='*' && tmp[i-1] == '/' ){
tmp[i-1] = '\0';
sign = FALSE;
fputs( tmp, fp_store );
}
if( tmp[i] =='/' && tmp[i-1] == '*' ){
tmp[i-1] = '\0';
sign = TRUE;
}
}
if( sign == TRUE ){
fputs( tmp, fp_store );
}
}
fclose( fp );
fclose( fp_store );
return 0;
}
运行截图:
多了两个空格,怀疑是追加模式的问题,不再细究。
小白刚学习C语言,代码质量不高,欢迎评论。
标签:语句,tmp,23,int,sign,注释,fp,100,txt From: https://www.cnblogs.com/yuwu/p/17568080.html