2017-04-15
编译原理实验课实在太无聊,又不好意思玩3节课。就玩了2节半。。。
写了个能够辨别关键字和运算符的程序。写完后测试的时候大多数都通过了。
这时候我写了一句XXXshabi int的时候,我勒个擦,程序出bug了。果然
shabi还是不能乱用,罪过,罪过。
这时候,我想到是因为程序读到第一个i的时候就进入了判断。没办法,想了下最后
把判断写成了函数,在读第二个i的时候再次调用判断。果然解决了。这时候又一个bug出现了。
我去。。。(此处的两万五千字因含有敏感词汇已被博客园屏蔽)
因为测试的时候呀我写了个rreturn,按道理是可以识别的,but
在读到第二个r之后遇到了e,因为关键字也含有else,这时候系统就把
这个e当做了else去等待判断,没办法,只能在写一个if语句,但是这就显得很冗余,
可惜没时间修改了,因为电视剧开播了。。。。哈哈哈哈
附代码:
http://ddl.escience.cn/pan/preview?path=%2F%E7%BC%96%E8%AF%91%E5%8E%9F%E7%90%86%2F%E7%AC%AC%E4%BA%8C%E6%AC%A1%E5%AE%9E%E9%AA%8C%2Fpro_second.cpp
程序截图: