文章标题

来源:互联网 发布:全网通手机淘宝 编辑:程序博客网 时间:2024/06/05 15:53

运算符大致可以分为5种类型:算术运算符、连接运算符、关系运算符、赋值运算符和逻辑运算符等等。
1:算术运算符包括 * (乘) - (减) + (加) / (除) %(取余)
先乘除(取余),后加减
a++ 表示a加1 ++a与a++表示的意思不一样 前者表示先用a 再给a加上1 ,后者表示在用a之前先给a加1 然后再使用a
a - -与- -a的区别同上
除法/ :如果两个数都是整型,那么它们相除也是整型。
如果两个数中有一个或者两个都是浮点型,那么它们相除的结果也是浮点型。
%:给一个十进制数 %2 然后再除2 可以得到它的二进制序列。
给一个十进制的数 %10 然后再除10 可以得到它每一位上的数。
2:逻辑运算符包括: &&(逻辑与),||(逻辑或), !(非)
&&:只要有一个条件为假,整个表达式就为假。
|| :只要有一个条件为真 ,整个表达式就为真。
!:如果a为真,那么!a就为假,反之就为真。
3:关系运算符包括 < (大于), >(小于) ,==(等于) ,<=(小于等于) , >=(大于等于) , !=(不等于)
注意:在C语言中符号==与=不一样
符号=作为赋值运算,符号==作为比较。
例如

  #include "stdio.h"  int main(){  int y=1;  int x=0;  if(x=y)  {  printf("呵呵\n");  }  else  {  printf("哈哈\n");  }  return 0;}

这个程序输出呵呵,这语句本意似乎是要检查 x 是否等于 y,而实际上是将 y 的值赋给了 x ,然后检查该值是否为零。
4:位操作运算符
位操作运算符是用来进行二进制运算的运算符。它分为两类:逻辑位运算符和移位运算符。
(1): & (按位与):两个都为1时结果为1,其它情况都为0。
| (按位或) :两个都为0时结果为0,其它情况都为1。
^ (按位异或) :两个不同则结果为1,否则结果为0.
~ (按位取反) :作用是将各个二进制位由0变1,由1变0。
(2): 移位运算符:
<<(左移) >>(右移)
5:条件操作符:
表达式1 ? 表达式2 :表达式3;
先求解表达式1
若其值为真 或 非0,则将表达式2的值作为整个表达式的取值,否则将表达式3的值作为整个表达式的取值。
例如:
max=(a

#include "stdio.h"int num=20;int arr[10]={0};printf("%p\n",&num);printf("%p\n",arr);//arr表示数组首元素的地址。printf("%p\n",arr[0]);//首元素的地址。printf("%p\n",&arr);//arr表示整个数组,对整个数组取地址为首元素地址。

8:sizeof 可以计算类型长度(单位是字节)
sizeof(int);
int i;
sizeof (i);
sizeof i;
不能写 sizeof int;

1 0