5.1.1算数操作符:+ 、-、 * 、/、 %
#includeint main() { int a = 1 + 3; int b = 72 - 6; int c = 32 * 8; //注意在运算过程中当两边都是整数时程序会执行整数除法,如果一边位小数执行小数运算 int d = 6 / 3; printf("%d n", a); printf("%dn",b); printf("%dn", c); printf("%dn", d); //取模(得到余数) int f = 9 % 2; printf("%dn",f); return 0; }
5.1.2移位操作符:>>右移 左移 <<
int main()
{
int a=2;
int b=a<<1;
printf("%dn",b);
return 0;
}
注释:左移操作符 ----移动的是二进制位
5.1.3位操作符: &安位与, | 按位或 , ^按位异或
5.1.4赋值操作符:= ,+=, -=, *=, /=, &=, ^=, |=, >>=, <<=
例如
#includeint main() { int a = 6; a = a + 5; a = 6; a += 5; a = a - 3; a -= 3; a = a % 3; a %= 3; printf("%d n",a); return 0; }
5.1.5单目操作符
单目操作符与双目操作符
双目操作符:1+3 这里的加号有两个操作数就称为双目操作符
单目操作符:只有一个操作数,就称为单目操作符
| ! | 逻辑反操作 |
|---|---|
| - | 负值 |
| + | 正值 |
| & | 取地址 |
| sizeof | 操作数的类型长度(以字节为单位) |
| ~ | 对一个数的二进制按位取反 |
| -- | 前置、后置 -- |
| ++ | 前置、后置 ++ |
| * | 间接访问操作符(解引用操作符) |
| (类型) | 强制转换类型 |
// !逻辑取反案例 #includeint main() { //0 表示假 非0就是真 int a = 0; printf("%d n",!a); if (a) { //当a为真,执行 } if (!a) { //当a为假,执行 } } //sizeof案例 #include int main() { //sizeof是一个操作符 //计算数据类型大小 int y = 6; printf("%d n",sizeof(int)); printf("%d n", sizeof(y)); return 0; } //sizeof计算数组案例 #include int main() { //5*4=20 int yin[5] = {0}; printf("%d n", sizeof(yin));//在这里所计算的是数组的总大小单位为字节 20 printf("%d n", sizeof(yin[5])); //计算数组元素个数如下 int sz= sizeof(yin) /sizeof(yin[0]) printf("%d n",sz) return 0; } //int main() { int a=0; printf("%d n", ~a)//~按*(二进制)位取法 把所有二进制中数,1变成0,0变成1; return 0;
注意:对于整数在内存中储存的是补码,一个正整数的二进制表示有三种。
例如:-1
原码:10000000000000000000000000000001
反码:11111111111111111111111111111110
补码:11111111111111111111111111111111(红色字体为符号位)
原码变反码符号位不变,其他位按位取反,反码变补码反码加一。正整数原码、补码、反码相同
加加减减#include强转int main() { int y = 15; int z = ++y;//前置++ 先++ 后使用 printf("%d n",y); printf("%d n",z); int yi = 15; int zw = y++;//后置++ 后使 用先++ printf("%d n", yi); printf("%d n", zw); return 0; } //输出结果位 //16 //16 //15 //16
当两个数据类型不匹配时就需要用到数据类型转换。
int main()
{
//强制转换数据类型
int y = 1.1;
printf("%d n",y);
return 0;
}
此代码编译时会出现警告如图
在这时就需要用到转换数据类型:
int main()
{
//强制转换数据类型
int y = (int)1.1;
printf("%d n",y);
return 0;
}



