- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 i c 若字符型数据定义为 signed char,当最高位为1时,则前8位全补1。 例如: signed char c=‘\376’; int i; i=c ; 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 c i 赋值运算符和赋值表达式 ‘\376’代表8进制的376 3*8*8+7*8+6=254D=1111 1110B i=-2 (6) 如果 long int 赋给 int ,则取 long int 中的低 16 位给 int 变量 int a ; int a ; long b= 8 ; long b = 65536 ; a = b ; a = b ; (5) 如果 int 型数据赋给 long int 型变量,则 long int 中低16位放 int 数据,高 16 位如果是正数(+)则全补0,如果是负数(-)则全补1。 int a = 3; int a = -3 ; long b ; long b ; b = a ; b = a; 赋值运算符和赋值表达式 (7) 将 unsigned int 数据赋给 long int 时,long int 高位补0 ;如果将 unsigned int 数据赋给同长度的 int 变量时,将 unsigned 型变量的内容原样赋给非unsigned 变量,但如果数据超出 非 unsigned 的范围,则出错。 unsigned int a=65535 ; int b ; b=a ; /* b= -1 */ (8) 如果将 非unsigned 数据赋给等长 unsigned 型变量,则原样照赋 (包括符号位)。 赋值运算符和赋值表达式 void main( ) { unsigned a ; int b = -1 ; a = b ; printf(a = %u, a) ; /* 结果为 65535 */ } 有符号数据赋给无符号变量。 赋值运算符和赋值表达式 2. 赋值组合运算符 在赋值运算符之前加上其它运算符可以构成复合运算符。 例如 : 在 = 之前加上 + 则构成 += a += 3 相当于 a = a+3 如果表达式是由多项构成,则相当于有括号 a = a+(表达式) 例如 : a += 5*3 ; 相当于 a = a + (5*3) ; 凡是二元(二目)运算符都可以与“=”一起组成赋值组合运算。 赋值运算符和赋值表达式 3. 赋值运算符结合性 赋值表达式由(单一或组合)赋值运算符将一个变量和一个表达式连接起来的式子。 赋值表达式的求解过程是 : (1)对表达式求值 ; (2)将该值赋给运算符左边的变量。 赋值运算符是自右至左结合,如 : a=(b=5) 等价于 a=b=5 运行顺序 :( 1 ) b=5 ? ( 2 ) a=b 赋值运算符和赋值表达式 表达式为 a + = a - = a*a 如 a=12 运行次序: (1) a = a - a*a = -132 (2) a = a+a = -264 表达式 运行结果 a=b=c=5 a=5 , b=5 , c=5 a=5+(c=6) c=6 , a=11 a=(b=4)+(c=6) c=6 , b=4 , a=10 a=(b=10)/ (c=2) c=2 , b=10 , a
原创力文档


文档评论(0)