0
点赞
收藏
分享

微信扫一扫

学习操作符的感受和笔记(3)

上善若水的道 2022-04-21 阅读 35
c#

sizeof 补充笔记

sizeof内部运算不是实际运算

 

如代码如下

int a=3;

int b;

b=sizeof(a=a+4);

printf("%d",a);

 

最后显示的结果为3

在sizeof里面的a+4的运算只是一个虚拟的运算,他不会在程序中显示出来


~按(二进制)位取反

把0变成1 得出的是补码

补码减一得反码

补码减一取反得源码

例如:

a=4

~a

4在二进制中的显示的源码为

000000000000000000000000000000100 源码

111111111111111111111111111111011 反码

1111111111111111111111111111010 补码

000000000000000000000000000000101 最终显示的结果

 

最后结果为5


++a a++

前置加加 后置加加

前置加加:先加在使用a,

后置加加:先使用a再加

- -同理


(类型)强制类型转换

 

例如:

int a=3.14 (3.14不是整形)

我们可以强制转换

改为

int a=(int)3.14

可以强制转化为整形


&& 逻辑与

两个是真才是真,一个真一个假为假,两个是假为假

 

说明一下:

如程序中出现

a++&&++b&&c++

如果a++为假,则后面的++b和c++不会进行运算


丨丨 逻辑或

两个是真为真,一个真一个假为假,两个为假为假

 

说明一下:

如果程序中出现

a++丨1++b1丨c++

首先,如果a++为正,则后面的++b和c++不会进行运算


条件操作符

exp1?exp2;exp3

 

如果要表达的为

if(a<3)

a=3

else

a=-3

 

则可以写为:

a<3?:3;-3


逗号表达式

exp1,exp2,exp3,.....

逗号表达式就是分开运算,从左到右,最后结果以最后一个式子结果为准

不建议过于使用

 

 

举报

相关推荐

0 条评论