1
2
这些是否会被视为相同,这取决于实现。同时编译代码并检查程序集输出,以查看编译器如何处理这两种情况。 在我为之开发的嵌入式系统上,我像您一样添加了一个“中间”指针,并看到函数执行时间明显加快。在我的例子中,编译器每次都从头开始重新计算指针链,并没有优化它们。您的编译器可能不同,唯一真正的方法是尝试两种方法并测量执行时间。 |
2
3
除非某些中间结构成员已标记 不稳定的 , the compiler should treat your two examples as equivalent. I would prefer your second code sample just because it looks cleaner. |
3
2
I'm pretty sure your compiler will optimize the two to the same code as gcc does. 您可以很容易地通过为这两者生成汇编程序代码(在gcc中使用-s开关)并比较它们来检查这一点。 |
Community wiki · C中有哪些耗时的操作? 1 年前 |
Community wiki · 将所有处理器电源都投入到任务中 1 年前 |
Community wiki · C++为C添加了什么?[已关闭] 1 年前 |
Community wiki · 打印1到1000,不带循环或条件 1 年前 |