单等号
在数学中=通常被叫做等于号,但在计算机中虽然效果相似但其原理不一样。单等号=也可以成为赋值,计算顺序从左往右。例如 num = 4;原理是4赋值给了num,所以num的值为4。
复合运算符
num += 90;意思就是将num + 90在赋值给num,最后的结果也就是100。同理其他运算符也是通用的。
位运算符
&运算符:两个操作数同时为1时结果为1。例如
原理就是,首先需要把4和5换成2进制数,也就是100和101,在进行比较如下:
| 运算符:两个操作数只要一个为1,结果就为1。例如
同上面&运算符,先将操作数转换成二进制。如下:
^ 运算符:两个操作数相同,结果为0,不相同为1。例如:
先转换成二进制如下
~ 运算符:操作数为0,结果为1,操作数为1,结果为0。例如:
因为2是一个整型,所以会占4个字节,其实内存里存放的二进制是00000010,然后第一位,也就是第一个0是表示符号的,0为正号,1为符号。如下:
<< 运算符:首先需要cout中的情况,也叫重载,在cout中<<运算符表示插入运算符意思为,cout << 4;把4插入到cout中。而两边是数字的则是左移运算符例如:2 << 3;
为什么会是16呢,仔细看一下运算过程和原理。首先先把2转成二进制数,也就是10,10是有小数点的10.0,左移三位也就是,1距离小数点增加3位,也就是加3个0,变成了10000转成十进制就是16,所以结果为16。
当写在cout中就需要加()让计算机明白2 << 3 是一体的。
>>运算符:同左移运算符一样,只不过变成了右移。
同样16换算成二进制就是,10000,然后右移两位,就减去两个0,变成了100,在转换成十进制就是4。所以运行的结果为4。
sizeof运算符:使用sizeof运算符可以获得占用内存的大小。基本用法:sizeof(表达式/数据类型)。
可以清楚看出,int类型占4个字节,double占8个字节,char占1个字节。
当输入特别的中文时,中文字符在内存中是占2个字节,之所以结果是5,因为在中文字符后面会跟上一个\0占一个字节,表示字符结束的标志。