考虑下面的程序。
null
int main( ) { int arr[2] = {0,1}; printf ( "First Element = %d" ,arr[0]); getchar (); return 0; } |
非常简单的程序。。嗯…输出将是0。
现在如果你替换 arr[0] 具有 0[arr] ,输出将是相同的。因为编译器在访问数组元素之前会在指针中转换数组操作。
例如 arr[0] 会是 *(arr+0) 因此0[arr]是 *(0+arr) 你们都知道 *(arr+0) 和 *(0+arr) 都一样。
如果你发现以上文章有任何错误,请写下评论。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END