c语言中赋值表达式加上分号,C语言赋值表达式

C语言赋值表达式

1、 赋值运算符

1:赋值运算符

赋值运算符的符号位“=”,由赋值运算符组成的表达式称为赋值表达式。功能:先求出右边表达式的值,然后把此值赋给左边的变量。

格式: 变量名=表达式

说明:在程序中可以多次给一个变量赋值,每赋一次值,与它相应的存储单元中的数据就被更新一次,内存中当前的数据就是最后一次所赋给的那个数据。

2:赋值表达式

例如: a=2+3 就是一个赋值表达式

使用赋值表达式应注意以下几点:

a:赋值运算符的优先级只高于逗号运算符,比其他的运算符的优先级都要低,且具有自右向左的结合性。

b:赋值运算符不是数学中的等号,而是进行赋予的操作。

c:赋值表达式a=b的作用是将变量y所代表的的存储单元中的内容赋给变量x所代表的存储单元,x中原有的数据被替换掉。

d:赋值运算符的左侧只能是变量,不能是常量或表达式。

e:赋值运算符右边的表达式也可以说一个赋值表达式。

f:在c语言中,“=”被视为一个运算符,x=12是一个表达式。

3:赋值语句

在赋值表达式的尾部加一个“;” ,就构成了赋值语句。

例如: a=2+3; 就是一个赋值语句。赋值语句必须在最后出现分号,分号是语句中必不可少的部分,c语言规定赋值运算符的左边不能为常量或表达式。

2、 复合赋值表达式

在赋值运算符之前加上其它运算符可以构成复合赋值运算符。在c语言中共有10种复合赋值运算符,其中与算术运算符有关的复合运算符有:+=、-=、*=、/=。两个运算符之间不能有空格。复合赋值运算符的优先级与赋值运算符的优先级相同。

3、 赋值运算中的类型转换

如果赋值运算符两侧的数据类型不一致,在赋值前系统将自动先把右侧表达式求得的数值按赋值运算符左边变量的类型进行转换,也可以用强制类型转换的方式人为地进行转换后将值赋给赋值运算符左边的变量。

在c语言的表达式中,如果运算符两边的整型类型不相同,系统将自动地进行类型转换,规则如下:

A:当赋值运算符左边的变量为短整型,右边的值为长整型变量,短整型只能接受长整型变量低位上两个字节中的数据,高位上的两个字节中的数据将丢失;

B:当赋值运算符左边的变量为无符号整型,右边的值为有符号整型时,则把内存中的内容原样复制。右边数值的范围不应超出左边变量可以接受的范围,此时负数将转换为正数

C:当赋值运算符左边的变量为有符号整型,右边的值为无符号整型时,复制的机制同上。这时若符号位为1,将按负数处理。

展开阅读全文

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值