我收到以下程序" lvalue required as increment operand|"
中两个printf()
语句的错误。
#include<stdio.h>
int main(void)
{
int list[4]={12,22,32,42};
printf("The result of *list++ is %d",*list++);
printf("\nThe result of *(list++) is %d",*(list++));
return 0;
}
但是在下面的程序中*myptr++
,*(myptr++)
对于myptr
分配了list
. Ideone 链接
#include<stdio.h>
int main(void)
{
int list[4]={12,22,32,42},*myptr;
myptr=list;
printf("The result of *myptr++ is %d",*myptr++);
myptr=list;
printf("\nThe result of *(myptr++) is %d",*(myptr++));
}
为什么两者之间存在差异?解释是什么?这个问题在我浏览了几分钟前发布的以下问题后出现在我的发现中。寻找H2CO3
答案。