gpt4 book ai didi

c - 同一 block 逻辑的不同机器代码

转载 作者:太空宇宙 更新时间:2023-11-04 06:25:56 24 4
gpt4 key购买 nike

考虑以下代码

char love[4]={'l','o','v','e'};

love[1]和*(love+1)的机器码是一样的还是不一样的?为什么?

最佳答案

如果您要问是否会引用相同的内存位置,答案是肯定的。 *(1+love)1[love] 也是如此。

如果您问编译器是否会在幕后生成相同的机器语言,那完全取决于编译器。 ISO C 标准并未规定该详细程度。

它通常更关心效果,而不是实现细节。

鉴于所有四种可能性意味着同一件事,如果编译器在幕后生成不同的机器代码,我会感到惊讶 - 我希望体面的编译器生成最有效的版本所有情况。但是,如上所述,这绝不是强制性的。

关于c - 同一 block 逻辑的不同机器代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27012225/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com