在c语言中,数组 a[i++] 和数组 a[++i] 有区别吗?
首先我们先看下面的内容:
b = a++; //先计算表达式的值,即先把a赋值给了b;然后a再自加1。 b = ++a; //先a自加1后;然后把a自加后得到的赋值给b。
小结:谁在前面先计算谁!!!
有区别,举例说明:
1 #include <stdio.h>
2
3 int main ()
4 {
5 int a[3] = {1,2,3};
6 int i = 0;
7 printf("%d\n",a[i++]);//输出的值为1,因为是i++,所以是先使用a[0]的值,i再加上1,即先输出a[0]的值。
8
9 i = 0;
10 printf("%d\n",a[++i]);//输出的值为2,因为++i,所以先直接使i加1,再输出a[1]的值。
11
12 return 0;
13 }
在c语言中,数组 a[0]++; 又是什么意思?
a[0]表示数组中的第一个值,可以把它看成一个变量x, a[0]++也就是数组中第一个值+1再存放到原位。
比如:int a[2]; 其中a[0]=1; a[1]=5; a[0]++以后,a[0]的值变为2。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有