一个自动剔除COMMENT的C++程序

今天突然有人问我有没有写过自动去除标准C++源文件COMMENT 的程序.这让我一下想起当初面微软的时候现场写的1个程序,当初考虑的实在太不周全,导致直接被BS.如今我可以从容的写这个程序,不过在写完这个程序突然发现1个问题.原来这个貌似简单的程序有这么多的陷阱.

1.COMMENT 有两种形式"//","/*...*/".

对于"//"情况固然简单因为只要单行处理即可.

但是碰到"/*"情况即可分成多行:

/*ddddddd

fffffffff*/

2.这两种形式可能在字符串中显示如

string s = "abcd//";

string s = "/*ddddd*/";

3.即使显示在字符串中也可能出现如下形式:

string s = "/*/*/

               **/";

即是字符串连接的情况.

这些情况都将直接造成程序复杂性.

另外一种想法是按照编译器去检查COMMENT的方式,好久没翻阅编译原理的书了,对表达式的规约也许是个很不错的方法.得好好再学习了.另外,只能较笨挫的完成程序了事,学无止境啊.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值