[英]Increment int pointer value - Doesn't work
我正在嘗試打印一個int數組,但這給我一個錯誤。
錯誤:需要左值作為增量操作數
int *a[] = {1,2,3,4,5};
for(int i=0;i<5;i++)
{
printf("%d",*a);
a++;
}
int *a[]
表示一個指向int的指針的數組。 您在這里需要一個整數數組,因此請使用int a[]
。
您不能遞增a
因為a
是一個數組,而不是一個指針。 數組有時會衰減到指向第一個元素的指針,但是您不能修改該指針。 相反,可以使指針指向數組中的元素,如int *p = a
或使用下標運算符(如a[i]
訪問元素。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.