1. 主页
  2. 文档
  3. C语言教程
  4. C语言指针
  5. 数组元素的一种不常见的表示

数组元素的一种不常见的表示

考虑下面的程序。

int main( )
{
int arr[2] = {0,1};
printf("First Element = %d\n",arr[0]);
getchar();
return 0;
}

非常简单的程序.. 呵呵… 输出将为 0。

现在,如果您将arr[0]替换为0[arr],则输出将相同。因为编译器在访问数组元素之前将数组操作转换为指针。

例如arr[0]将是*(arr + 0),因此 0[arr] 将是*(0 + arr)并且您知道*(arr + 0)*(0 + arr)是相同的。

 

这篇文章对您有用吗?