zoukankan      html  css  js  c++  java
  • C++笔记 day003基础知识回顾

    c++操作符一般都是内置类型的,我们还可以自己重载这些操作符用于非内置类型的。

    ey:friend ostream& oprator<<(ostream &os,ClassName<T>&g)  //重载“<<”运算符,

    这节主要回顾C++语言定义的针对内置类型的操作符:

    首先要学习一下表达式:表达式是由  操作数operand  和操作符operator  表示,

               表达式的结果是右值,可以读取该结果值,但是不允许对它进行赋值

    operator:

      c++提供一元操作符   和  二元操作符

      一元操作符:作用在一个操作数上的操作符,如&:取地址操作符,*引用操作符,

      二元操作符:作用在两个操作数上的操作符,如+:加法操作,-:减法操作

    注意:1.像*  可以作 引用操作符,是一元的;也可以是乘法操作,是二元的;等其他的操作符;

       2.c++提供的操作符对操作数的类型是有要求的,例如(*)引用操作符必须要求操作数类型是指针类型;

       3.对于二元操作数而言,必须是两个操作数的类型一致,或者类型可以转换成同一个类型。

    优先级 precedence

      表达式的值取决于其子表达式是如何进行分组的。

      1.一元操作符的优先级是最高的,其次是 乘 和 除,再是二元的加减法操作

      2.操作符都是左结合:当两个操作符优先级相同,从左到右依次进行操作符操作。

      3.圆括号()凌驾于优先级之上。

    算术操作符:

      +   一元正号,+a;//代表正数a

      - 一元负号,-a;//代表负数a

        ey:int i=1;

           int k=-i;

         *    /   %  分别是:乘法,除法,求余

      +  - 分别是:加法,减法

      除法(/):对两个整数做除法,结果认为整数,如果他的商包含了小数,则小数部分会被截除

        ey:int i=21/6;//i=3;

             int j=27/7;//j=3;

      求余  求模(%):用于计算左操作数除以右操作数的余数,

        注意:该操作符的操作数的类型必须是整型,bool char short long int

        int i=42;

        i%4;//result is 2

    /////////////////////////////////////////////////////////////////

    如果两个数都是正数,除法/和求模%结果都是正数或零;

    如果两个数都是负数,除法/的结果是正数或者零,求模的结果则是负数或者零;

    如果只有一个操作数是负的,则除法/的结果是负数或零,求模取决于机器;

      ey:   21%-5;//result :if is 1,else is -4;

         %结果取决于依据分子还是分母。

    /////////////////////////////////////////////////////////////////

    注意:算术运算符要考虑两点:

      1.除零操作,数学特性导致

      2.溢出,超出了其类型表示的范围;计算机的特性

        ey://16bit

          short value=32767;

          short a=1;

          a=a+value;//overflows,a=32768,

         cout<<a<<endl;

          溢出时对于不同的机器获得的值是不相同的,

  • 相关阅读:
    团队冲刺六
    团队冲刺五
    【Mybaits学习】03_ CRUD基于注解
    【Mybaits学习】02_ 快速入门
    【Mybaits学习】01_ 初识
    深圳国际马拉松
    深圳南山半程马拉松
    Selenide使用笔记
    UI自动化测试01-环境搭建
    Java C3p0在Spring中运用
  • 原文地址:https://www.cnblogs.com/wust221/p/3029099.html
Copyright © 2011-2022 走看看