C语言中的强制类型转换运算_第1页
C语言中的强制类型转换运算_第2页
C语言中的强制类型转换运算_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C语言中的强制类型转换运算C语言中的强制类型转换是通过类型转换运算来实现的。其一般形式为:(类型说明符)(表达式)其功能是把表达式的运算结果强制转换成类型说明符所表示的类型。例如:(float)a把a转换为实型(int)(x+y)把x+y的结果转换为整形在使用强制转换时应注意以下问题:1)类型说明符和表达式都必须加括号(单个变量可以不加括号),如果把(int)(x+y)写成(int)x+y则成了把x转换成int型之后再与y相加了。2)无论是强制转换或是自动转换,都只是为了本次运算的需要而对变量的数据长度进行的临时性的转换,而不改变数据说明时对该变量定义的类型。【例1】#inelude<s

2、tdio.h>intmain(void)floatf=3.14;printf("(int)f=%d,f=%.2fn",(int)f,f);return0;本例表明,f虽强制转为int型,但只在运算中起作用,是临时的,而f本身的类型并不改变。因此,(int)f的值为5(删去了小数)而f的值仍为5.75.1、求余运算符(模运算符)“”:双目运算,具有左结合性。要求参与运算的量均为整型。求余运算的结果等于两数相除后的余数。#inelude<stdio.h>intmain(void)printf("%dn",110%3);return0;本例输

3、出110除以3所得的余数2。2、算数表达式和运算符的优先级和结合性表达式是由常量、变量、函数和运算符组合起来的式子。一个表达式有一个值及其类型,他们等于计算表达式所得结果的值和类型。表达式求值按运算符的优先级和结合性规定的顺序进行。单个的常量、变量、函数可以看作是表达式的特例。算数表达式是由算术运算符和括号连接起来的式子。算数表达式:用算数运算符和括号将运算对象(也称操作数)连接起来的、符合C语法规则的式子。以下是算数表达式的例子:a+b;(a*2)/c;(x+r)*8-(a+b)/7;+I;Sin(x)+sin(y);(+i)-(j+)+(k-);运算符的优先级:C语言中,运算符的运算优先级

4、共分为15级。1级最高,15级最低。在表达式中,优先级较高的先于优先级较低的进行运算。而在一个运算量两侧的运算符优先级相同时,则按运算符的结合性所规定的结合方向处理。运算符的结合性:C语言中各运算符的结合性分为两种,即左结合性(自左至右)和右结合性(自右至左)。例如算术运算符的结合性是自左至右,即先左后右。如有表达式x-y+z则先执行x-y运算,然后再执行+z运算。这是左结合性。右结合性最典型的是赋值运算符。如x=y=z.3、强制类型转换运算符其一般形式为:(类型说明符)(表达式)其功能是把表达式的运算结果强制转换成类型说明符所表示的类型例如:(float)a(int)(x+y)4、自增、自减

5、运算符+i自增1后再参与其他运算。-i自减1后再参与其他运算。i+i参与运算后,i的值再自增1.i-参与运算后,i的值再自减1.比较容易出错的是i+,i-。因此应仔细分析。【例3】#inelude<stdio.h>intmain(void)inti=8;printf(”output=%dn",+i);/output=9printf(”output=%dn",-i);/output=8printf("output=%dn",i+);/output=8printf("output=%dn",i-);/output=9printf("output=%dn",-i+);/output=-8printf("output=%dn",-i-);/output=-9return0;【例4】#include<stdio.h>intmain(void)inti=8,j=8,p,q;p=(i+)+(i+)+(i+);q=(+j)+(+j)+(+j);printf("p=%d,q=%d,i=%d,j=%dn",p,q,i,j)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论