瘦瘦的第六颗桃子(操作符)

    xiaoxiao2022-07-07  220

    今天又是沙雕女生的一天,最近水卡长着翅膀飞了,牙膏跟着私奔了,就连水壶也看不惯我了,不知怎么的就碎了。 水逆体质什么时候才能被历史重写,算了,还是来学习吧。

    操作符 1.算数操作符 算数操作符就是用来运算的操作符。

    这里注意的是/和%运算被除数和被模数不可为0。%操作符的两个操作数都必须为整数。

    2.移位操作符

    左移操作符相当于乘二。(<<)右移操作符分为逻辑移位和算数移位。(>>)逻辑移位(无符号数)用0补位。算数移位(有符号数)用符号位补位。 不管是左移还是右移都不改变数值的大小 3.位操作符 & | ^ 这里操作数都必须是整数 计算整数的二进制数中1的个数 #include<stdio.h> int main() { int n=0; int count=0; scanf("%d",&n); while(n) { if(n&1) { count++; } n>>=1; } printf("%d",count); return 0; }

    分割线

    #include<stdio.h> int main() { int n=0; int count=0; scanf("%d",&n); while(n) { count++; n=n&(n-1); } printf("%d",count); return 0; }

    第一个代码段是给这个数按位与1,之前的数全都变成0,判断最后一位是否是一,然后右移移位继续判断 第二个代码效率更高,每出现一个1就循环一次。 4.赋值操作符 这里没有什么需要注意的,就是知道一个复合操作符的方便运用。 5.单目操作符 !逻辑反操作 +正值 & 取地址 sizeof 以字节为单位的长度 ~ 对一个数的二进制按位取反 ++ 前置和后置 前置:先使用,后自增 后置:先自增,后使用(–也一样) 6.关系操作符 注意:==和=要区分清楚。 7.逻辑操作符 &&和|| 这里要注意和按位与和按位或是不一样的。

    ()&&() 第一个条件不满足时,后面的不会再执行()||() 第一个条件成立时,后面的代码段也不会执行。 8.逗号表达式 整个表达式的结果是最后一个表达式的结果。 9.整型提升 为啥要这样子呢? 数据存在内存中,而进行运算是在CPU中的寄存器中,标准寄存器是4个字节而char类型在内存中占一个字节,在进行运算时,就要转化为CPU中整型操作数的长度。 如何进行整型提升呢?有符号数整型提升时,高位补充符号位无符号数提升时,高位补充0.整型提升时先看变量的自身类型
    最新回复(0)