C语言一些运算符

C语言一些运算符

标签(空格分隔):C语言

算术运算符

+(加法运算符)
-(减法运算符)
*(乘法运算符)
/(除法运算符)
%(求余/求模运算符)
++(自增)
- -(自减)
提示:加、减、乘、除这四个运算符的功能和平常数学中的一样,就不多述了;需要注意的是”/”中,若两边为整型,结果也为整型,如9/2==4,且若有浮点型参与,则另一个整型就会转化成浮点型,结果自然也就是浮点型;”%”(求模运算符)两边必须是整型,且是求余,而不是求商,如9%2==1,8/2==0;”++”中需要注意的是”n++”和”++n”,n++是先运算后自增,++n则是先自增在运算,”n–”和”–n”同理。

关系运算符与表达式

>(大于)
<(小于)
==(等于)
>=(大于或等于)
<=(小于或等于)
!=(不等于)
提示:用关系运算符将两个表达式连接起来的式子称为关系表达式。关系表达式的值反映了关系运算的结果,它是一个逻辑量,用整数”1”代表真,用整数”0”代表假,类型为整型,如a=(1<2),运算后a的值为1,若a=(1>2),运算后a的值为0。

逻辑运算符与表达式

&&(逻辑与)
||(逻辑或)
!(逻辑非)
提示:假设a和b都是逻辑量
1、a&&b:当a和b都为”真”时,结果是”1”(真),否则,结果是”0”(假)
2、a||b:当a和b都为”假”时,结果是”0”(假),否则,结果是”1”(真)
3、!a:如果a是真,结果是”0”(假),如果a为假,结果是”1”(真)

位操作运算符与表达式

&(按位相与)
|(按位相或)
~(按位取反)
^(按位异或)
<<(左移)
>>(右移)
提示:
&:参与运算的两数各对应的二进位相与,只有对应的两个二进位均为1时,结果位才为1,否则为0,如000101&000001的结果是000001,需要注意的是,参与运算的数以补码方式出现
|:参与运算的两数各对应的二进位相或,只要对应的二个二进位有一个为1时,结果位就为1,参与运算的两个数也是均以补码出现
~:对参与运算的数的各二进位按位求反,如~(0001001)==1110110
^:参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1,参与运算的数还是以补码方式出现
<<:左边的运算数的各二进位全部左移一位,左边丢弃,右边用0填充
>>:1、逻辑移位:右边丢弃,左边用0填充 ; 2、算术移位:右边丢弃,左边用原值的符号位填充

赋值运算符

=(赋值)
+=(加法赋值)
—=(减法赋值)
*=(乘法赋值)
/=(除法赋值)
%=(求余赋值)
&=(按位与赋值)
|=(按位或赋值)
^=(异或赋值)
>>=(右移赋值)
<<=(左移赋值)
提示:a=b的意思是把b的值赋给a,需要注意的是,如果赋值运算符两边的数据类型不同,系统将自动进行类型转换,即将赋值号右边的类型转换为左边的类型;”+=”:i+=1,等价于i=i+1,其他同理。

特殊运算符与表达式

,(逗号运算符) 用于将若干表达式组合成一个表达式,逗号表达式的形式为:表达式1,表达式2,……,表达式n(从左向右依次执行,整个表达式的结果是最后一个表达式的结果)
? ; (条件运算符) 是一个三目运算符,其功能是将三个表达式连接起来成为一个表达式,合法的表达形式是:逻辑表达式?表达式1:表达式(当逻辑表达式的值为真时,整个表达式的值为表达式1的值;当逻辑表达式的值为假,整个表达式的值为表达式2的值)

下标引用

[] 操作数:一个数组名+一个索引值
如:
int arr[9];
arr[6]=1;
[]的操作数是arr和6

函数调用操作符

() 接受一个或者多个操作数:第一个操作数是函数名,剩余的操作数就是传递给函数的参数

访问一个结构成员

.结构体.成员名
->结构体指针->成员名

你可能感兴趣的:(c语言,c语言)