运算符

程序=算法+数据,而程序又是由表达式组成的,表达式是由运算符与数据组成的。

运算符:

    1、求空间长度运算符:    sizeof        注:不要当成函数了!

    2、赋值运算符:    左值=右值    将右值赋值给左值

        注意:1、隐式转换:编译器是不能直接运算不同类型间的数据,必须转换为同类型方能运算。

                    整形=浮点型;    取整数部分赋值给整形

int a;
float pi=3.14;
a = pi;
printf("%d\n",a);

                    char-(int)->int-(float/double)->double    (低字节向高字节转换)

                    2、溢出

    3、算数运算符: + - * /   %     优先级:* / % 》+ -    结合方向:自左向右    

printf("%d\n",2.1%2);	//error! %只对整形数据  int%int

    4、位运算符:(bit级的操作)    右移>>    左移<<    按位与&    按位或|    异或^    取反~

    5、判定运算符: >    <    >=    <=    !=    !    ==    结果:真1/假0

short a=2;
short len=a>>1;
printf("a=%d len=%d\n",a,len);
short c=1;
len=c<<2;
printf("c=%d len=%d\n",c,len);
short i=7;
short j=2;
len=i&j;
printf("i=%d j=%d len=%d\n",i,j,len);

    6、自增自减运算符:    ++    --

      前自增++i(先自增再取值),后自增i++(先取值再自增)

int i=0,j=0;
int resulse = i++ && j++;                //有陷阱
printf("i=%d,j=%d,result=%d\n",i,j,result);
i=0;j=0;
result = ++i && ++j;
printf("i=%d,j=%d,result=%d",i,j,result);
i=0;j=0;
result = i++ || j++;
printf("i=%d,j=%d,result=%d",i,j,result);
i=0;j=0;
result = ++i || ++j;                    //有陷阱
printf("i=%d,j=%d,result=%d",i,j,result);

    7、三目运算符:    表达式1?表达式2:表达式3

           表达式1为真,则取表达式2,为假则取表达式3

    8、逗号运算符:    表达式1,表达式2,表达式3,...表达式n(从右向左依次执行)

                    运算结果结果:取表达式1的结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值