指针



正确写法

[C语言] 指针_C语言


错误写法


[C语言] 指针_C语言_02


[C语言] 指针_C语言_03




#include <stdio.h>


int main()
{

int arr[10] = { 0 };
int* p = arr;
int i = 0;
for (i = 0; i < 10; i++)
{
*(p + i) = i;
}

for (i = 0; i < 10; i++)
{

printf("%p <===> %p\n",&arr[i],p+i);
}
printf("\n");
for (i = 0; i < 10; i++)
{

printf("%p <===> %d\n", &arr[i], *(p + i));
}
return 0;
}

[C语言] 指针_C语言_04




2[arr]

-- 编译过程中arr[2]   ---->  *(arr+2)   -- 加法支持交换律          p[2] ---->*(p+2) 

[C语言] 指针_C语言_05