新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这个程序可以实现对于注释//---的一行内容进行删除。但对于/ /还不能实现。
创新互联技术团队十余年来致力于为客户提供成都网站设计、做网站、成都品牌网站建设、营销型网站、搜索引擎SEO优化等服务。经过多年发展,公司拥有经验丰富的技术团队,先后服务、推广了上千余家网站,包括各类中小企业、企事单位、高校等机构单位。
少了很多大括号,包括while的,if else的 while(feof(fp1)!=EOF) 最好改为while(!feof(fp1))我改后测了一下,这个程序只能删除“/* */”的注释,对“//”的注释无效。再改一下状态机吧。
/* 时, 输出c1,c2赋给c1,再 读下一个字符给c2, (如果c2是EOF则输出c1,程序结束。
int a,b;//这是一个注释行。那么,//后面的部分这是一个注释行就被注释掉了,不起作用,但是//前面的“int a,b;不受影响。
少了很多大括号,包括while的,if else的 while(feof(fp1)!=EOF) 最好改为while(!feof(fp1))我改后测了一下,这个程序只能删除“/* */”的注释,对“//”的注释无效。再改一下状态机吧。
/* 时, 输出c1,c2赋给c1,再 读下一个字符给c2, (如果c2是EOF则输出c1,程序结束。
基本思路就是忽略注释。顺序读入文件字符串, 如果发现/*, 那么忽略/*一直到遇到*/ 如果遇到// 那么一直到行尾忽略。其他特殊情况可以不考虑, 比如 在字符串中的/*一类的。 否则会增加复杂度。
我的实现有点小麻烦 你先用getline函数(自己查用法)每次都从文件中取一行到字符数组s 然后判断s[0]是不是等于%,是的话。说明此行市注释。继续取下一行。
分析字符串,碰到//直接删除整行.碰到/*删除,然后做个标记,继续查找 */找到以后删除它们中间的字符串。
这个程序可以实现对于注释//---的一行内容进行删除。但对于/ /还不能实现。
少了很多大括号,包括while的,if else的 while(feof(fp1)!=EOF) 最好改为while(!feof(fp1))我改后测了一下,这个程序只能删除“/* */”的注释,对“//”的注释无效。再改一下状态机吧。
/* 时, 输出c1,c2赋给c1,再 读下一个字符给c2, (如果c2是EOF则输出c1,程序结束。
基本思路就是忽略注释。顺序读入文件字符串, 如果发现/*, 那么忽略/*一直到遇到*/ 如果遇到// 那么一直到行尾忽略。其他特殊情况可以不考虑, 比如 在字符串中的/*一类的。 否则会增加复杂度。
我的实现有点小麻烦 你先用getline函数(自己查用法)每次都从文件中取一行到字符数组s 然后判断s[0]是不是等于%,是的话。说明此行市注释。继续取下一行。