首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

词法分析,如何判断常量和变量

2012-02-23 
词法分析,怎么判断常量和变量?如题.有一个常量10和变量a10,若能成功转换为integer类型,则知其为常量,若否

词法分析,怎么判断常量和变量?
如题.
有一个常量10和变量a10,若能成功转换为integer类型,则知其为常量,若否则为变量,即strtoint( '10 ')和strtoint( 'a10 ').请问怎么判断他们是否成功?若不能这样,麻烦给个解决方案.

[解决办法]
你可以用一个错误捕捉来检查转换是否成功
function IsInteger(const s:string):boolean;
begin
try
strtoint(s);
result:=true;
except
result:=false;
end;
end;

正规式就是正则表达式,一般的编程语言词法应该满足这个正则式,具体要看语言的词法规则。
L(r)
r=(a|b|c...|z|_)*

词法分析后还要转换成中间程序的单词符号串,转换方法是使用有穷自动机。

热点排行