你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
【3.4签到】每日问答——语句for( ;1 ;)有什么问题?它是...
[复制链接]
苏柚
提问时间:2016-3-4 08:43 /
阅读主题, 点击返回1楼
赞
0
收藏
1
评论
128
分享
发布时间:2016-3-4 08:43
请先
登录
后回复
128个回答
adlu
回答时间:2016-3-4 12:22:16
a0a.1 32b0c
约等于while(1)
赞
0
评论
回复
支持
反对
qianfan
回答时间:2016-3-4 12:36:00
a0a.1 32b0c
while(999999999999999999999999999999999999999999999999)
赞
0
评论
回复
支持
反对
muxb
回答时间:2016-3-4 12:53:35
a0a.1 32b0c
等于for(;;),死循环
赞
0
评论
回复
支持
反对
sfee2002
回答时间:2016-3-4 13:22:23
a0a.1 32b0c
等于for(;;),死循环
赞
0
评论
回复
支持
反对
anger0925
回答时间:2016-3-4 13:32:11
a0a.1 32b0c
没有问题,一直循环
赞
0
评论
回复
支持
反对
nobita
回答时间:2016-3-4 13:39:08
a0a.1 32b0c
等于While(1);
赞
0
评论
回复
支持
反对
safferia
回答时间:2016-3-4 13:40:13
a0a.1 32b0c
相当于while(1);
赞
0
评论
回复
支持
反对
safferia
回答时间:2016-3-4 13:40:47
a0a.1 32b0c
相当于while(1);
赞
0
评论
回复
支持
反对
阿莫西林
回答时间:2016-3-4 13:40:53
a1024a.1 32b0c
签到签到
赞
0
评论
回复
支持
反对
沐紫
回答时间:2016-3-4 13:44:16
a1024a.1 32b0c
签到
赞
0
评论
回复
支持
反对
hbzjt2012
回答时间:2016-3-4 13:50:49
a0a.1 32b0c
签到
赞
0
评论
回复
支持
反对
zhang7309
回答时间:2016-3-4 13:56:22
a0a.1 32b0c
签到
赞
0
评论
回复
支持
反对
OPTION_REG
回答时间:2016-3-4 14:04:04
a0a.1 32b0c
认真对待ST的“每日问答”!
编程语言的描述一般可以分为语法及语义。
语法是说明编程语言中,哪些符号或文字的组合方式是正确的,语义则是对于编程的解释。
编译器对高级语言源程序的处理过程可以划分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等几个阶段。
词法分析器:输入源程序,进行词法分析,输出单词符号。
语法分析器:在词法分析的基础上,根据语言的语法规则(文法规则)把单词符号串分解成各类语法单位,并判断输入串是否构成语法上正确的“程序”。
中间代码生成器:按照语义规则把语法分析器归约(或推导)出的语法单位翻译成一定形式的中间代码,比如说四元式。
优化:对中间代码进行优化处理。
目标代码生成器:把中间代码翻译成目标语言程序。
好了,说了那么多,那么,语句到底有什么问题呢?看下图
在uVision开发环境下,C51编译器,“for(;1;)”这种东西是没有办法出现的。
在MPLABX开发环境下,XC8编译器,提示的是分号错误,这叫词法错误。
在eclipse开发环境下,java编译器,提示的错误不但包含分号,还有那个“1”也是错的。因为java的条件时true或者false。
结论:楼主的“for(;1;)”有
词法
问题!
至于大家说的无限循环,完全符合
语法
,程序员会写到这句话时,就表明他的
语义
也正确了,谁没写过whle(1)!
赞
1
评论
回复
支持
1
反对
0
vilsenma
回答时间:2016-3-4 14:30:29
a0a.1 32b0c
死循环的哦!
赞
0
评论
回复
支持
反对
112207301219
回答时间:2016-3-4 14:47:50
a0a.1 32b0c
死循环
赞
0
评论
回复
支持
反对
1
2
3
4
5
6
7
8
9
/ 9 页
下一页
所属标签
相似问题
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
等于for(;;),死循环
签到签到
编程语言的描述一般可以分为语法及语义。
语法是说明编程语言中,哪些符号或文字的组合方式是正确的,语义则是对于编程的解释。
编译器对高级语言源程序的处理过程可以划分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等几个阶段。
词法分析器:输入源程序,进行词法分析,输出单词符号。
语法分析器:在词法分析的基础上,根据语言的语法规则(文法规则)把单词符号串分解成各类语法单位,并判断输入串是否构成语法上正确的“程序”。
中间代码生成器:按照语义规则把语法分析器归约(或推导)出的语法单位翻译成一定形式的中间代码,比如说四元式。
优化:对中间代码进行优化处理。
目标代码生成器:把中间代码翻译成目标语言程序。
好了,说了那么多,那么,语句到底有什么问题呢?看下图
在uVision开发环境下,C51编译器,“for(;1;)”这种东西是没有办法出现的。
在MPLABX开发环境下,XC8编译器,提示的是分号错误,这叫词法错误。
在eclipse开发环境下,java编译器,提示的错误不但包含分号,还有那个“1”也是错的。因为java的条件时true或者false。
结论:楼主的“for(;1;)”有词法问题!
至于大家说的无限循环,完全符合语法,程序员会写到这句话时,就表明他的语义也正确了,谁没写过whle(1)!