总结的一些易混淆的运算符的运用,不知道还有没有什么遗漏呵

运算符的应用

1.   sizeof(取占内存大小运算符)      求所占字节数

eg: #include<stdio.h>

   int main()

   {

     int a,n1;

     n1=sizeof(a);//其它可写形式为:n1=sizeof a;n1=sizeof (int);

     printf("%d\n",n1);

     return 0;

}所求结果为4,一个整形变量占4个字节

sizeof 编译期间值的类型,并不会参与运算

eg: #include<stdio.h>

int main()

   {

      int a=10,n1;

      n1=sizeof(a++);

      printf("%d %d\n",n1,a);

      return 0;

   }所求结果为4  10

2.   = ==

==是关系运算符,eg :a==10表示的是a的值等于10

=是赋值运算符,eg :a=10表示把10的值赋给a

3.   ~:按位取反

&:按位与  eg:7&9 (7  0000 0111 9  0000 1001):0000 0001

   ^:按位异或 eg:7^9:0000 1110(异或:相同为0,不同为1)

   |:按位或  eg:7|9:0000 1111(或:有1为1)

4.&& ||(逻辑运算符)

   表达式1&&表达式2&&表达式3

   如果表达式1为假,即之后的表达式不再执行(与:有假即假)

 eg: #include<stdio.h>

int main()

{

   int a=2,b=0,c=3;

   if(a++ && b++ && c++)

    {

       printf ("ture");

     }

    else

{

  printf ("false");

}

printf("%d %d%d\n",a,b,c);

return 0;

}输出结果为 false 3 1 3

   表达式1||表达式2||表达式3

若表达式1为真即之后的表达式不在执行(或:有1为1)

eg: #include<stdio.h>

int main()

{

   int a=0,b=2,c=3;

   if(a++ || b++ || c++)

    {

       printf ("true");

     }

    else

{

  printf ("false");

}

printf("%d %d%d\n",a,b,c);

return 0;

}输出结果为true 1 33

4.   ++ & --

eg:#include<stdio.h>

   int main()

   {

     int a=5;

      a=a++;

      printf(“%d\n”,a);

      a=++a;

      printf(“%d\n”,a);

        return 0;

}输出结果为 6 7

#include<stdio.h>

   int main()

   {

     int a=5;

      a=a--;

      printf(“%d\n”,a);

      a=--a;

      printf(“%d\n”,a);

        return 0;

}输出结果为 4 3

5.  ,(逗号运算符)

该运算符只取最后一个算术表达式的值

eg: #include<stdio.h>

int main()

{

   int a=2,b=3,c=5;

   c=(a++,b++);

   printf("c==%d\n",c);

return 0;

}运行结果为c==3

6.   << >>(左移 右移(位运算符))

eg :14   0000 1110

14<<1:00011100    28=14*2^1

14<<2:00111000    56=14*2^2

14>>1:00000111    7=14/2

14>>2:00000011    3=14/2^2

>>:相当于除法 <<:相当于乘法


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值