问答题
下面C语言程序经非优化编译后,若运行时输入2,则结果是area=12.566360,addr=-1073743076 经优化编译后,若运行时输入2,则结果是area=12.566360,addr=-1073743068 请解释为什么输出结果有区别。
使用非优化编译时,变量s,pi,r在局部数据区都分配4个字节的空间。使用优化编译时,由于复写传播,pi*r*r变成3.1......
(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
问答题 对于下面C语言文件s.c 某编译器编译时报错如下: 请回答,对函数f2为什么没有类似的警告错误。
问答题 下面是表达式和赋值语句的文法,其中and的类型是bool×bool→bool,+的类型是int×int→int,=的类型是int×int→bool,:=要求id和E的类型都是int或者都是bool。为该文法写一个语法制导定义或翻译方案,它完成类型检查。
问答题 证明文法E→E+id|id是SLR(1)文法。