操作符
算数操作符
+ - * / %
代码1,+
#include <stdio.h >
int main()
{
int a = 1;
int b = 2;
int c = a + b;
printf("%d\n", c);
return 0;
}
结果:3
代码2,—
#include <stdio.h >
int main()
{
int a = 1;
int b = 2;
int c = b - a;
printf("%d\n", c);
return 0;
}
结果:1
代码3,*
#include <stdio.h >
int main()
{
int a = 1;
int b = 2;
int c = b * a;
printf("%d\n", c);
return 0;
}
结果:2
代码4,/
#include <stdio.h >
int main()
{
int a = 9;
int b = 2;
int c = a / b;
printf("%d\n", c);
return 0;
}
结果:4//?为什么是4而不是4.5?
首先4.5是浮点型,不是整型,其次使用/计算的结果为商,不会显示余数
改进代码4--代码5
#include <stdio.h >
int main()
{
int a = 9;
float b = 2.0;
float c = a / b;
printf("%f\n", c);
return 0;
}
结果:4.500000//?为什么现在/可以除出小数
刚才代码4/是两个整型变量之间的除法,而现在是整型与浮点型之间的除法,且定义的商c为浮点型
%--模
例子--水仙花数
移位操作符
>> <<
右移 左移
代码1
#include<stdio.h>
int main()
{
int a = 2;
int b = a<<1;
printf("%d\n", b);
return 0;
}
结果:4
位操作符
&:按位与
|:按位或
^:按位异或
赋值操作符
= += -= /= &= ^= |= >>= <<=
代码2
#include<stdio.h>
int main()
{
int a = 2;
a = a + 5;
printf("%d\n", a);
return 0;
}
结果:7
利用赋值操作符改写
代码3
#include<stdio.h>
int main()
{
int a = 2;
a += 5;
printf("%d\n", a);
return 0;
}
结果:7
单目操作符
例a+b;+有两个操作数a和b,则+称为双目操作符
单目操作符--只有一个操作数的操作符
常见如下
!
—
+
&
sizeof
~
--
++
*
(类型)
!反逻辑操作符
在C++中,0代表假,非0代表真,当非0没有定义确切的数的时候,默认非0值为1
#include<stdio.h>
int main()
{
int a = 1;
a = !a;
int b = 0;
b = !b;
printf("%d\n", a);
printf("%d\n", b);
return 0;
}
结果:
0
1
sizeod为操作数类型长度(单位:字节)
例子见前面比大小