C#基础操作符详解(下)
书接上文的基本操作符,下文介绍的是其他操作符: 4.2一元操作符: 只要有一个操作数跟在它后面就可以构成表达式,也叫单目操作符。 ①&x和*x操作符(很少见有印象即可): 这两个操作符同样也需要在不安全的上下文中运行:&是取地址操作符。 简单错误: pStu.错误:由于.为基本操作符优先级大于 所以是先进行pStu.的操作正确应该为:(*pStu).即加个括号。 ②+、-、!、~四个一元操作符: -运算符可造成内存溢出: int a = int.MinValue; int b =checked( -a);//原因在于int.MaxValue与int.MinValue绝对值不一样。 ~求反操作符,对操作数转化为2进制,进行二进制的按位取反。 计算机取相反数的原理:先把该数转化为2进制再按位取反+1 !操作符只能用来操作布尔类型的数据, ③++x;–x运算符:单独使用时x++与++x没有区别。 4.3、强制类型转化操作符:(T)x,T表示某种数据类型。 类型转换: ①隐式(implicit)类型转换,常见的为以下三种情况: *不丢失精度的转换:小字节数(存储空间)的数据类型向多字节(存储空间)的数据类型转换不会丢失精度,比如金鱼从鱼缸里放到游泳池里还是好好的。例如: int x = int.MaxValue; long y = x; 这就是在不丢失精度的情况下进行的隐式类型转换