我们知道指针表达式和下标表达式是等价的,比如:
array[10] = 10;
*(array + 10) = 10;
或者有时候我们这样写:
2[array]
但因为它表示成指针表达式为*(2 + array) ,所以这种古怪的写法和array[2]是相等的。
那么你应该用哪一个呢?
很多人会选择下标表示,我想他们更多是考虑下标的可读性和容易理解,但如果从性能上讲的话,这个选择可能会影响运行时的效率。
我们来做个实验:
我们知道指针表达式和下标表达式是等价的,比如:
array[10] = 10;
*(array + 10) = 10;
或者有时候我们这样写:
2[array]
但因为它表示成指针表达式为*(2 + array) ,所以这种古怪的写法和array[2]是相等的。
那么你应该用哪一个呢?
很多人会选择下标表示,我想他们更多是考虑下标的可读性和容易理解,但如果从性能上讲的话,这个选择可能会影响运行时的效率。
我们来做个实验: