c语言操作符

操作符学习笔记

1.算术操作符

+,-,*,/,%

1.求模只能用在整型
2.除法运算当被除数、除数为整型时结果自动取整

int a = 9/2;     //a = 4
double b = 9/2;  //b = 4.000000
double c = 9.0/2;//c = 4.500000

2.移位操作符

左移操作符 <<
右移操作符 >>

3.位操作符

&:按位与

|:按位或

^ :异或 a ^ a=0;a ^ 0=a

//计算补码
// 3:00000000 00000000 00000000 00000011
//-2:11111111 11111111 11111111 11111110

int a = 3;
int b = -2;

int c = a & b;//都为1才为1  00000000 00000000 00000000 00000010
printf("%d\n",c);//有符号打印c=2

int d = a | b;//有1为1  11111111 11111111 11111111 11111110
printf("%d\n",d);//有符号打印d=-1

int e = a ^ b;//相同为0  11111111 11111111 11111111 11111101
printf("%d\n",e);//有符号打印e=-3

4.赋值操作符

= += -= *= /= <<= >>= &= |= ^=

连续赋值从右到左执行

5.单目操作符

只有一个操作数的操作符

非运算 !

    int a = 5;
	int b = !a;
	int c = 0;
	int d = !c;
	printf("%d\n", b);//0
	printf("%d\n", d);//1 规定真默认为1

负号 - 正号 +

取地址符 &
间接访问操作符 *

sizeof 计算变量或类型创建变量的内存大小

区分strlen:计算字符串长度
sizeof内部的表达式不参与运算

二进制按位取反 ~

包括符号位

– ++

    int a = 10;
	int b = a++;//后置++
	printf("%d\n", b);//10
	printf("%d\n", a);//11
	int c = ++a;//前置++
	printf("%d\n", c);//12
	printf("%d\n", a);//12

6.关系操作符

< <= > >= != ==

7.逻辑操作符

&& ||

a&&b:a为假则不执行b
a||b:a为真则不执行b

8.条件操作符

exp1?exp2:exp3

9.逗号表达式

用逗号隔开的多个表达式,从左向右执行
整个表达式的结果是最后一个表达式的结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值