C的运算符有以下几类: 1.算术运算符:* - + /
2.关系运算符: > < == != >= <= 3.逻辑运算符:! && ||
4.位运算符:<< >> ~ | ^ &
5.赋值运算符:=及扩展赋值运算符 6.条件运算符:?: 7.逗号运算符:, 8.指针运算符:*和&
9.求字节数运算符:sizeof
10.强制类型转换运算符:(类型) 11.分量运算符:. -> 12.下标运算符:[ ]
13.其他:如函数调用运算符:()
a = 5+6 * 3.4 ;
操作数 a 5 6 3.4 运算符 + * =
表达式 a = 5+6 * 3.4 语句 a = 5+6 * 3.4 ; 除法运算符 2个操作数都是整数 计算机过也是整数 如何过结果是小数会舍弃小数 如果操作数 有一个是浮点数 就会发生转换 会吧整数转换浮点数 运算结果也是浮点数 取模运算符% 求余数 自增运算符 ++ i++ 先运算在加— ++I 先加— 在运算
I =2; i=2
J=i++ I=2 J=I; I=i+1 i=3 自减运算符
j=++i i=2 i=i+1
j=I j=3
赋值运算符
复合赋值运算符
符号 功能 += 加法赋值 -= 减法赋值 *= 乘法赋值 /= 除法赋值 %= 模运算赋值 <<= 左移赋值 >>= 右移赋值 &= 位逻辑与赋值 |= 位逻辑或赋值 ^= 位逻辑异或赋值
到底Total=Total+3;与Total+=3;
有没有区别?答案是有的,对于A=A+1,表达式A被计算了两次,对于复合运
算符A+=1,表达式A仅计算了一次。一般的来说,这种区别对于程序的运行没有
多大影响,但是当表达式作为函数的返回值时,函数就被调用了两次(以后再说
明),而且如果使用普通的赋值运算符,也会加大程序的开销,使效率降低。
赞同
Int I =4 Int j=6
I*=j+4 等同于i=i*(j+4)
关系运算符
运算结果 true false
= 为赋值运算符 == 为等于运算符
> < >= <= 优先级别高于 == !=
逻辑运算符 !逻辑反
&&逻辑与 2个操作数都是个true结果才为true 不然是false || 逻辑或 2个操作数一个true 结果为true
条件运算符
条件 表达式1 表达式2 True –1 False—2 Int min
Min =5 >7 ? 5:7;
表达式 是由一个或多个操作数以及0个或是0个以上的运算符所组成的序列 表达式可以嵌套
A+b*10 关系表达式的运行结果是BOOL型值 Int i=1 j=1;
Cw (“hello {0}”, i==j); True
???????????????????????
using System;
using System.Collections.Generic; using System.Linq; using System.Text;
namespace 计?算? {
class Program {
static void Main(string[] args) {
int i = 1, j = 1;
Console.WriteLine(\"(0)\",i==j); Console.ReadLine(); } } }
运算符的优先级和结合性
优先级最低的是赋值运算符,其次是条件运算符 可以通过()控制表达式的运算顺序 算术运算符》关系运算符》逻辑运算符
从右向左结合性 的只有赋值运算符 3元运算符 {?} 1元运算符(— ! ~)
Doble scorel =97.5; Int scorel =81
Int I = scorel + score2; 发生数据类型转换 隐式类型转换
显式类型转换
??问题??
BOOL类型除外 其他基本数据运算是进行类型转换 解决
一、BOOL和bool的区别 1、类型不同 BOOL为int型 bool为布尔型 2、长度不同
bool只有一个字节
BOOL长度视实际环境来定,一般可认为是4个字节 3、取值不同
bool取值false和true,是0和1的区别
如果数个bool对象列在一起,可能会各占一个bit,这取决于编译器。
布尔型变量bool
bool是布尔型变量,也就是逻辑型变量的定义符,类似于float,double等,只不过float定义浮点型,double定义双精度浮点型。
布尔型变量的值只有 真 (true) 和假 (false)。 布尔型变量可用于逻辑表达式,也就是“或”“与”“非”之类的逻辑运算和大于小于之类的关系运算,逻辑表达式运算结果为真或为假。
bool可用于定义函数类型为布尔型,函数里可以有 return TRUE; return FALSE 之类的语句。
bool很实用。
bool只能是true(正确)和FALSE(错误); 当结果只能有【两】种情况的时候用bool变量;
例如:系统设置里的是否播放背景音乐(要么开,要么不开) 性别,一般不会有第3种性别吧~~,是男人就 true,不是就 false
三元运算符 是 {?}
一元运算符 是(— ! ~)