赋值运算的优先级:
- 算术运算符 优先于 关系运算符 优先于 双目逻辑运算符 优先于 赋值运算符
- 赋值运算符的结合性是从右至左
代码如下:
#include<stdio.h>
int main(void)
{
int i=97,j,k,l,m,n;
float f1=1.0f,f2;
char c1='b',c2; //'b'(98)
printf("c2=i+1 的值为: %d\n",c2=i+1); //98
printf("\n");
printf("j=!c1 的值为: %d\n",j=!c1); //!c1=0 -->j=0
printf("\n");
printf("f2=f1-0.02 的值为: %.2f\n",f2=f1-0.02f); //0.98
printf("\n");
printf("k=c1==i||c1!=i 的值为: %d\n",k=c1==i||c1!=i);
//k=((c1==i)||(c1!=i)) -->k=(0||1) -->k=1
printf("c1 = %d\n k = %d\n",c1,k); //c1=98,k=1
printf("\n");
printf("l=m=n=-(--i) 的值为: %d\n",l=m=n=-(--i));
//-(--i)=-96
printf("i = %d\n l = %d\n m = %d\n n = %d\n",i,l,m,n);
//i=96
printf("\n");
return 0;
}
结果 如下: