gpt4 book ai didi

c++ - 这两种访问数组的方法是否实现相同?

转载 作者:行者123 更新时间:2023-11-30 00:59:31 24 4
gpt4 key购买 nike

我们有一个如下所示的三字节数组:

char charArray[3];
charArray[1]='a';
//or
char * charP=charArray;
charP[1]='a';

两个方法用于访问数组的第二个元素,现在它们将由编译器以相同的方式实现,还是第一个方法不会像第二个方法那样涉及指针?

最佳答案

will they be implemented in the same way by compiler

也许。

如果您使用数组的名称并且下标是常量表达式,编译器可能会在编译时执行部分或全部指针运算。它可能无法使用指向数组的指针来做同样的事情;这可能取决于编译器是否可以确定指针指向数组中的元素。

不过,这只是猜测。确定给定编译器是否为两者发出相同代码的唯一方法是查看该编译器发出的代码。

关于c++ - 这两种访问数组的方法是否实现相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4205812/

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