//操作符
#include <stdio.h>
#include <stdlib.h>
int main() {
//整数除以0会导致程序运行报错.
//但是如果编译过程中能知道除数是0,
//那么编译器就会在编译过程中报错
/*int n = 0;
pfintf("%d\n", 10 / n);*/
//整数除以整数,结果还是整数,除不尽的部分直接舍弃
//当一个表达式的操作数不是相同类型的时候,就会发生隐式类型转换
//double和int一起计算, 此时就会先把int隐式转换为double
// 1 / 2.0 => 1.0 / 2.0 => 0.5 => 0
/*下面的层次体系称为寻常算数转换.
long double
double
float
unsigned long int
long int
unsigned int
int
如果某个操作数的类型在上面这个列表排名较低,
那么就会往排名较高的操作数转换
这样的算数转换不会丢失精度.*/
// %只能针对整数
//与 两个数都为 1 结果为 1, 否则为 0;
//或 两个数都为 0 结果为 0, 否则为 1;
//异或 相同为 0, 相异为 1;
//取反 0 变 1, 1 变 0;
//double转换为int可能丢失数据精度
//int ret = 1 / 2.0;
// 0001
// 0010
// 0011
int x = 0x1;
int y = 0x2;
// %x 打印一个无符号的十六进制的整数
printf("%x\n",x | y);//结果为 3
system("pause");
return 0;
}
C语言中的操作符
最新推荐文章于 2024-06-21 22:21:45 发布