增加 int 指针值 - 不起作用

Increment int pointer value - Doesn't work

我正在尝试打印一个 int 数组,但出现错误。

error: lvalue required as increment operand

int *a[] = {1,2,3,4,5};
for(int i=0;i<5;i++)
{
    printf("%d",*a);
    a++;
}

int *a[] 表示指向整数的指针数组。你想要一个整数数组,所以使用 int a[].

您不能递增 a,因为 a 是一个数组,而不是指针。数组有时会衰减为指向第一个元素的指针,但您不能修改该指针。相反,创建一个指向数组中元素的指针,如 int *p = a 或使用下标运算符,如 a[i] 来访问元素。