Presentation is loading. Please wait.

Presentation is loading. Please wait.

第九节 赋值运算符和赋值表达式.

Similar presentations


Presentation on theme: "第九节 赋值运算符和赋值表达式."— Presentation transcript:

1 第九节 赋值运算符和赋值表达式

2 赋值运算符和赋值表达式 int a,b; b=8; a=(a=7)+b; int a,b; a=b=0;
用来将赋值号右边表达式的值存放到赋值号左边的变量中。赋值运算符是一个双目运算符。其一般形式是: 变量=表达式 整个表达式的值为变量赋值之后的值。 int a,b; b=8; a=(a=7)+b; int a,b; a=b=0; int a=7,b=8,c; c=a+b;

3 赋值运算符和赋值表达式 类型转换 变量=表达式 中变量和表达式的类型不一致时,发生类型转换。 例如: int a; a=3.14;
float b; b=100; double d; float c; c=d; int e='a'; int i=289; char c='a'; c=i; int a; long b=8; a=b; unsigned a= ; int b; b=a;

4 赋值运算符和赋值表达式 类型转换 例: 带符号数据赋值给无符号变量 int main() { unsigned a; int b = -1;
a = b; printf("a=%u\n",a);… } 运行的结果是: a=

5 赋值运算符和赋值表达式 复合赋值运算符 变量△=表达式 其中△是+、-、*、/、%等运算符中的任何一个。 如:
+= a+=b等价于a=a+b,a+=b+c等价于a=a+(b+c) -= a-=b等价于a=a-b,a-=b+c等价于a=a-(b+c) *= a*=b等价于a=a*b,a*=b+c等价于a=a*(b+c) /= a/=b等价于a=a/b,a/=b+c等价于a=a/(b+c) %= a%=b等价于a=a%b,a%=b+c等价于a=a%(b+c)

6 赋值运算符和赋值表达式 复合赋值运算符 注意: 变量=表达式 赋值运算符的左边必须是一个左值(如变量等)。 整个表达式也是一个左值。
例如: int a,b; b=5+(a=6); int a,b,c; a=(b=10)/(c=2); int a; (a=3*5)=4*3; int a=12; a+=a-=a*a; int a,b; printf("%d",a=b);


Download ppt "第九节 赋值运算符和赋值表达式."

Similar presentations


Ads by Google