【C】语言·指针与数组

2018-08-23  本文已影响9人  emmet7life
// 定义一个int类型的数组
int a[4] = {1, 2, 3, 4};

// 定义一个int类型的指针,并指向数组的第0个元素
int *p = a;

int i;
for (i = 0; i < 4; i++) {
    // 利用指针运算符*取出数组元素的值
    int value = *(p+i);
    
    printf("a[%d] = %d \n", i, value);
}

p是指针,a是一个数组

1> 如果p指向了一个数组元素,则p+1表示指向数组该元素的下一个元素。比如,假设p = &a[0],则p+1表示a[1]的地址

2> 对于不同类型的数组元素,p值的改变是不同的。如果数组元素为int类型,p+1代表着p的值加上2(16位编译器环境下)

3> 如果p的初值是&a[0],那么

4> 引用一个数组元素可以有两种方法:
下标法: 如a[i]
指针法: 如*(p+i) 或 *(a+i)

上一篇 下一篇

猜你喜欢

热点阅读