如何删除一个C语言程序中的注释分析字符串 , 碰到//直接删除整行.
碰到/*删除,然后做个标记,继续查找 */找到以后删除它们中间的字符串 。
具体的代码,你自己看能写出来不
编程实现去掉C语言文件中的注释给个思路吧:
按行读取文件,在本行寻找字符“//”和“/*”
若找到“//”,则从字符/开始一直到行尾的所有字符全都去掉
若找到“/*”,则从此处开始寻找“*/” , 删除字符“/*”和“*/”及二者之间的字符
C语言编程:编写一个程序,该程序的功能:去掉一个程序中的所有注释,如“\\×××××” “/*××××*/” 。这个程序可以实现对于注释//---c语言编写函数删除注释的一行内容进行删除 。
但对于/*
*/还不能实现 。
程序中有两点错误:
1c语言编写函数删除注释,字符'\'要写成转义符
2,while条件不正确
对程序修改如下:
#include
#include
#include
#include
void
main()
{
char
ch,ch3;
char
ch1;
char
ch2;
FILE
*r;
FILE
*w;
r=fopen("f:\\a.txt","r");
w=fopen("f:\\b.txt","w");
ch1=fgetc(r);
while(ch1!=EOF)
{
ch2=fgetc(r);
if(ch1=='\\'ch2=='\\')
//这里------
{
do
{
ch3=fgetc(r);
}while(ch3!='\n');
//这里------
}
else
{
fputc(ch1,w);
fputc(ch2,w);
}
ch=fgetc(r);
ch1=ch;
}
}
怎样消除c语言中注释一般来讲有两种:
一是单行注释:直接在该行需要注释c语言编写函数删除注释的地方加上"//"就行c语言编写函数删除注释了 。例如:
"int a,b;//这是一个注释行" 。那么c语言编写函数删除注释,"//"后面的部分"这是一个注释行"就被注释掉了c语言编写函数删除注释,不起作用c语言编写函数删除注释,但是"//"前面的“int a,b;"不受影响 。
另外还有一种是多行同时注释:
/*
int a,b;
int c,d;
*/
其中"/*"和"*/"起限定范围的作用,该范围内的语句都会被注释掉,将不再起作用 。当然,多行注释也是可以用来单行注释的
C语言的注释 删除C语言中的注释少年 , 作业就自己写,还上百度知道让别人免费给你写作业?给你点提示吧,重点是找出注释 , 也就是找出字符串数组中注释//或者/*和*/的数组下标,其他就是遍历查找的事情 , 自己写吧
c语言 删除程序中的注释1、少了很多大括号 , 包括while的,if else的
2、while(feof(fp1)!=EOF) 最好改为while(!feof(fp1))
3、我改后测了一下,这个程序只能删除“/**/”的注释,对“//”的注释无效 。再改一下状态机吧 。
4、下面的程序我把格式整理了一下,没改什么算法部分 。写程序要规范 。
#include "stdio.h"
void delcomm(FILE*fp1,FILE*fp2)
{
char c;
int i=0;
while(!feof(fp1))
{
printf("test\n");
if((c=fgetc(fp1))=='\n')
fprintf(fp2,"\n");
else
{
switch(i)
{
case 0:
if (c=='/')
i=1;
else
fprintf(fp2,"%c",c);
break;
case 1:
if (c=='*')
i=2;
else
{
fprintf(fp2,"/%c",c);
i=0;
}
break;
case 2:
if (c=='*')
i=3;
break;
case 3:
i=(c=='/')?0:2;
break;
}
}
}
}
int main()
{
FILE*fp1,*fp2;
if ((fp1=fopen("/home/hxl/test/md5.c","r"))==NULL)
{
printf("wrong!");
exit(0);
}
fp2=fopen("/home/hxl/test/md5out.c","w");
推荐阅读
- 美国服务器100g防御,高防美国服务器
- 安卓怎么显示手机温度时间,安卓手机温度怎么看
- sqlserver2005连接不上,sqlserver2019连接不上服务器
- 虎牙直播跳舞之梦夏菲,虎牙直播跳舞之梦夏菲是谁
- vb.net怎么另存项目 vbnet import
- 如何保持redis的数据,redis怎么做到数据不丢失
- flutter可以用java,flutter可以用uniCloud吗
- jsfor循环中暂停几秒,js for循环跳出循环
- 包含vb.netmutex的词条