int a=5/2; //2
printf(“%d\n”,a);
int a=5%2; //1
printf(“%d\n”,a);
算术操作符 + - * / %
移位操作符 >> <<
位操作符 & ^ |
赋值操作符 = += -= *= /= &= ^= | = >>= <<=
单目操作符 ! - + & sizeof ~ - -
<<左移
右移
#include<stdio.h>
int main()
{
int a=1;
/* a在内存创建4个字节空间
0000 0000 0000 0000 0000 0000 0000 0001 /
int b=a<<2; /* a左移2位,变成00 0000 0000 0000 0000 0000 0000 01 00 /
printf("%d\n",b); //1*2^2=4
printf("%d\n",a); //1
return 0;
}
int main()
{
int a=3; //011
int b=5; //101
int c=a&b; //001 按位与
printf("%d\n",c); //1
return 0;
}
int main()
{
int a=3; //011
int b=5; //101
int c=a|b; //111 按位或
printf("%d\n",c); //7
return 0;
}
int main()
{
int a=3; //011
int b=5; //101
int c=a^b; //^按位异或 不是次方 规则 相异1相同0 110
printf("%d\n",c); //6
return 0;
}
=赋值
== 比较
a=20;
a=a+10;
a+=10;
a=a-10;
a-=10;
a=a&2;
a&=2;
int main()
{
int a=10;
printf("%d\n",a); //10
printf("%d\n",!a); //0
return 0;
}
int main()
{
int a=0;
printf("%d\n",a); //0
printf("%d\n",!a); //1 0为假 非0为真
return 0;
}
int a=10;
printf(“%d\n”,sizeof(int)); 4
printf("%d\n",sizeof(a)); 4
/* sizeof 是计算类型或者变量的长度,单位是字节
printf(“%d\n”,sizeof a); 4
int main()
{
int arr[10]={0}; //10个整型元素的数组
int sz=0;
// 10*sizeof(int)=40;
printf("%d\n",sizeof(arr)); 40
//计算数组元素个数
//数组总大小/单个元素大小=数组个数
sz=sizeof(arr)/sizeof(arr[0]);
printf(“sz=%d\n”,sz); 10