www.ctrt.net > A=(A+i,A+j)在C语言中什么意思

A=(A+i,A+j)在C语言中什么意思

a是一个指针,a+i表示a所指位置的下i个内存区,a+j同理。这个程序的功能是: 交换 a+i 和 a+j 所指内存区的内容,t是中间变量。 就好像你要交换两瓶饮料,一瓶汽水,一瓶果汁,交换它们,要找一个空瓶子,这里,t就是空瓶子 a+i 和 a+j 就是你要...

就是给a[j]赋与其相反的值真假值,例如,如果a[j] = 5, 那这个赋值后,a[j] = 0如果,a[j]=0,赋值语句后,a[j]=1

等号右侧是逗号表达式,逗号表达式由n个表达式组成,以逗号分割,其结果是最后一个表达式的值,因此这个式子是将a+j的值赋值给变量a

a=a+i:计算a+i结果赋给a a=(a=a+i,a+j):将括号右边的赋值给a,即a=a+j

int a[3][4]; //假设定义一个3行4列的二维数组,所谓二维数组就是数组的数组 a[0]、a[1]、a[2]是数组a的元素,而这个元素是数组,而不是我们通常认为的基本数据类型的数据 所以*(a+i)就是获取数组a中第i个元素,等价于a[i],而a[i]本身又是一个...

a[k++]=j; sum+=j; 相当于: a[k]=a[k]+j; k=k+1; sum=sum+j;

int a[11][20],定义的是二维数组,a[i][j]表示第i+1行,第j+1列的数组元素; a[i][j]=0; 表示对这个数组元素赋值。

这是一个逻辑判断式,表示a= i

可以将i 理解成行,j 理解成列,a[i][j]和a[j][i]取值不同 比如,假设一个3维数组(你的是5x5),数值分别为: 1 2 3 4 5 6 7 8 9 循环中,当i=0时,a[i][j]取值为1 2 3,a[j][i]取值为1 4 7,根据这个来理解结果的不同吧

*(a+i)+j代表的是第 i行,j列的那个元素,这个没有问题吧。 而那个元素是指针。不是值,所以再加*取值。 这和普通的 *p=a;一个意思。 主要原因是数组里面放的全部都是指针,你可以看你定义时候的声明就知道了。

网站地图

All rights reserved Powered by www.ctrt.net

copyright ©right 2010-2021。
www.ctrt.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com