我正在尝试打印一个 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]
来访问元素。
关于c - 增加 int 指针值 - 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56204773/