一、在c语言中,操作符可分为算术操作符,移位操作符,位操作符,赋值操作符,单目操作符,关系操作符,逻辑操作符,条件操 作符,逗号操作符,下标引用"函数调用和结构成员。
1)算数操作符(“+”,“-”,“*”,“/”.,“%”)
+ 加法操作符
- 减法操作符
* 乘法操作符
/ 除法操作符(5/2==2)
% 取余操作符(5%2==1)
注意:1)除了%操作符之外,其他的几个操作符可以作用于整数和浮点型。
2)对于/操作符如果两个操作数都为整数,执行整数除法。而只要有浮点数执行的就是浮点数除法。
3)%操作符到的两个操作数必须为整数。返回值是整除之后的余数。
2)移位操作符(“《”,“》”)
《 左移操作符,移位规则“左边抛弃,右边补0”
》 右移操作符,移位规则:首先右移运算分为两种:1)逻辑移位左边用0填充,右边丢弃2)算术移位,左边用原该值的符号位填充,右边丢弃。
警告:
对于移位运算操作符,不要移动负数位,这个标准未定义的。
int num=10;
num>>-1(这种说法是错误的)
3)位操作符
‘&’按位与 ‘|’ 按位或 ‘^’按位异或
注意:他们的操作数必须为整数。不能创建临时变量交换两个数的值
#include <stdio.h>
{
int main()
int a=10;
int b=20;
a=a^b;
b=a^b;
c=a^b;
printf("a=%d b=%d\n"a,b);
return 0;
}
4)赋值操作符 这是一个很棒的操作符能够让你得到一个之前不满意的值,也就是你可以重新给自己赋值。
赋值操作符可以连续地使用。
5)单目操作符
“ ! ”逻辑反操作 “-”负值 “+”正值 “&” "sizeof" 操作数的类型长度(以字节为单位) “~” 对一个二进制按位取反 “--” 前置、后置--
“*”间接访问操作符(解引用操作符) (类型)强制类型转换
注意:前置++和--运算符:前置++先对a进行自增,然后使用a;前置--先对a进行自减,然后使用a:前置++和--对a先进 行使用,然后进行++或者--;6)关系操作符“>" ”>=" "<" " <=" "!=" "=="
警告:在编程的过程中注意==和=的区别。
7)逻辑操作符“&&” “||”
区分逻辑与和按位与 逻辑与是并且的意思,当两个结果都为真时才为真;其他都为假。条件同时成立
a&&b,只有当a和b同时为真则表达式的值为真如果a表达式为假,则不再进行b表达式的求值,整个表达式的值为假
按位与其功能是参与运算的两数各对应的二进位相与。只要对应的二个二进位都为1时,结果位就为1。参与运算的两个数均以补 码出现。
逻辑或与按位或
a||b,只要a和b有一个为真则表达式的值为真,如果a表达式为真,则不需要对b进行求值。整个表达式的值为真
操作数:一个数组名+一个索引值
int arr[10];//创建数组
arr [9]=10;//实用下标引用操作符。
[]的两个操作数是arr和9。
2.()函数调用操作符
接受一个或者多个操作数:第一个操作数是函数名,剩余的操作数就是传递给函数
的参数。
->结构体指针->成员名
操作符安