这篇博客是我对于操作符详解的学习博客,操作符1.0
- 操作符的分类…(很多种操作符)
{ double 双精度浮点型
float 单精度浮点型
/ 除号 int a = 5 / 2 >>2
double a = 5 / 2.0 >>2.5000
只要前后有一个浮点数则得小数
%求余 则不能用浮点数,必须整数
强制类型转换 int a = (int)3.14;这就是将3.14强制类型转换成整型
- 一道变态的面试题 (不创建临时变量使两个数交换)
// 加减法>>可能会溢出
a=a+b;
b=a-b;
a=a-b;
// 异或的方法 (同为零 异为1)
a=a^b;
b=a^b;
a=a^b; - 再写一道曾经360公司的一道笔试题
int i= 0,a = 0, b =2 , c = 3 ,d = 4;
i = a++ && ++b && d++;
// i = a++ || ++b || d++;
printf(“输出 a b c d”); return 0;
输出的结果为:????
这里的&与||一个是(逻辑与)与(逻辑或)此输出结果为1234是因为逻辑与&当进行判断第一个时为0即为假,故此语句不执行跳到下一个语句,再执行。
当a=1时,结果为2335,因为第一个为真之后,语句也正常执行了,故第一个为2;
当&&变为||时,当第一个为假时,接下来的语句就将不会执行了故输出2234;