C++笔记--类型转换、运算符的概念及算数、复合、关系、逻辑运算符

数据有不同的类型,不同类型数据之间进行混合运算时必然涉及到类型的转换问题。

转换的方法有两种:

自动转换:遵循一定的规则,由编译系统自动完成

强类型转换:把表达式的运算结果强制转换成所需的数据类型

1.1自动类型转换

①占用内存字节数少(值域小)的类型,向占用内存字节数多(值域大)的类型转换,以保证精度不降低。

②转换方向

注意:①无符号和有符号参加运算, 会将有符号转换为无符号

②int 和 double参加运算,会将int转换为double类型

③char 和short类型,只要参加运算,都会转换为int类型。

1.2强制类型转换

格式:(类型说明符)(表达式)

功能:把表达式的运算结果强制转换成类型说明符所表示的类型。

例如:

(int)p+1  对p强转成int类型,然后再+1
(int)(p+1)  对p+1强转成int类型

自动类型转换、强制类型转换都是临时的。

😃

 float f=3.14f;
    int x =0;
    x =(int)f;
    cout<<"x="<<x<<",f="<<f<<endl; //x=3,f=3.14

2 运算符

用算术运算符将运算对象(也称操作数))连接起来的,符合C++语法规则的式子,称为C++算术表达式。运算对象包括常量、变量、函数返回值等。

如果运算符需要一个运算对象就叫单目运算符

如果运算符需要两个运算对象就叫双目运算符

如果运算符需要三个运算对象就叫三目运算符

如果运算符需要多个运算对象就叫多目运算符

3 算数运算符

3.1 /的取整和除法运算

5/3==1    5/2==2   //如果/的全部运算对象都是整数,/的功能就是取整
5/2.5==2.5    //如果/有一个运算对象是实型 /的功能就是除法

3.2 %取余运算符

案例一:键盘输入一个整数 判断能否被3整除

 int data =0;
    //获取键盘输入
    cout<<"请输入一个整数:";
    cin>>data;
    //判断能否被三整除
    if(data%3==0)
    {
        cout<<data<<"被三整除"<<endl;
    }

    else
    {
        cout<<data<<"不被三整除"<<endl;
    }

案例二:如果rand()函数产生一个随机数>0,请使用rand()产生60-100的随机数

rand()%41+60;

案例三:如果rand()函数产生一个随机数>0,请使用rand()产生'a'-'z'的随机字母

rand()%26+'a';

4 复合运算符

int a=12;
a+=a-=a*=a;  //从右向左计算

5 逻辑运算符

注意:

&&:如果A为假,整个表达式为假,那么B的真假决定不了整个表达式的结果,所以不会再判断B的真假,就叫""短路特性";

||:如果A为真整个表达式为真,那么B的真假决定不了整个表达式的结果,所以不会再判断B的真假,就叫""短路特性"

在C++中,除了0为假 其他都为真

!10 ==0   !-10==0 !0==1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值