c语言中的二维数组的运用

*p=*p+1与*p++是否相等
2024年11月16日 16:00
有4个网友回答
网友(1):

相等,因为按照运算顺序来讲,指针的运算要比逻辑运算级别高

网友(2):

如果放在输出语句前面就是相等的,否则不等
如:
int *p;
int a[4] = {1,2,3,4};
p = a;
//*p = *p + 1;
*p++;
printf("%d\n",*p);
//printf("%d\n",*p++);

网友(3):

那要看你是什么情况,如果那是二维指针就相等,如果那是一维指针就不等.

网友(4):

指针运算符*的优先级大于算术运算符+,所以前面的是指针变量指向的地址的内容加1

后者的*优先级大于++,计算结果也一样,先去内容,运算后在加1
后者具体要放到函数中去,运算位置不同,其值也不同