C语言合法标识符

 我来答
毓良功燕
2019-03-17 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.3万
采纳率:26%
帮助的人:872万
展开全部
C++里面的标识符是以字母或下滑线打头,后面加上任意数字,字母,下划线.ff
ai_2里面有个空格,所以不是标识符.
画个有限状态自动机就很清楚了
比如S代表开始状态,S1代表标识符首字合法状态,eS代表输入合法,eF代表输入非法.A代表字母或下滑线,
B代表任意数字,字母,下划线,E代表结束符,那么自动机如下
S下输入字符属于A的话进入S1,否则经入eF;
S1下输入字符属于A或B,进入eS,否则进入eF
eS下输入字符属于A或B,进入eS,否则进入eF
eF下输入结束符号,进入最终状态,并且得到输入的不是标识符
eS下输入结束符号,进入最终状态,并且得到输入的是标识符
乡村小乔pp
2019-05-04 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.2万
采纳率:30%
帮助的人:881万
展开全部
没太清楚是什么意思.
是不是你想要词法分析啊?那要用到自动机的啊.把文法搞清楚,当有字母或下滑线开头的时候就可以进入,然后一个字符一个字符的判断,分析.
如果有非法字符就直接NO,如果有空格就认为结束了,准备进入下一个.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式