![]() |
1
3
据我所知,是的,这是一个有效的翻译。不,这几乎是100%肯定不是你的编译器要产生的翻译。C标准有所谓的 as-if rule 这意味着编译器可以自由生成 任何 犹如 例如,在实践中,编译器可以生成以下程序:
对于一个观察者来说,这个程序的副作用和你的程序的副作用是无法区分的:它会打印出来
|
![]() |
2
4
差不多了 怎么翻译 ,尽管函数的局部变量通常在堆栈上分配,而不是请求操作系统提供一些内存来存储它们。 当然,有了智能编译器,源代码中有足够的信息,可以简单地将整个过程优化到:
ISO C标准没有规定 怎样 |
![]() |
3
1
变量
第四步:
编译器可能会完全跳过此步骤,因为您没有使用
推这两个论点(
最终不可能确切地知道源代码将产生什么指令。取决于体系结构、操作系统/OS版本、编译器/cc版本、编译器标志。。。 |
![]() |
TheKing · 为什么数组的地址可以有负值? 3 年前 |
![]() |
yurnero · MATLAB:“加载”一个快速访问功能 7 年前 |
![]() |
joe · 一页可以同时在两个工作集中吗? 7 年前 |
![]() |
Jaques · “.exe”已触发断点 7 年前 |
![]() |
adn bps · 在函数中修改变量的高效内存方法 7 年前 |
![]() |
Gauraang Khurana · C语言中分段错误的不稳定行为 7 年前 |
![]() |
Rajesh K · 如何查找设备中存在的广告垃圾? 7 年前 |