那是不是只有1,2,3元运算时, 才会自动转换为相同类型进行运算的?我刚自学3天,小白中的小白= =对了我说的是Java,地方放错了。
追答位运算 需要程序员自己 显式 转换到 整型。
一般运算, 例如4则运算,会自己转换。要注意常数,例如
d = 5/3*2; d 是 float, 但程序有可能 处理成 先按整除 5/3*2 变 1 * 2 得 2,
再转 float 2.0
如果写 d = 5.0/3*2; 就按float 运算,不会出错。
总之,写明确一些为好。
2个数据是不同类型,一个int,一个float.
C++中&和&&、float和double的分别
int *p;p = &a;\/\/取变量a的地址赋给p,那么p就指向了a &也可以做位运算(主要是针对二进制),表示“按位与”运算 如果两个数相应的二进位都是1,那么该位的结果值也是1,否则为0 比如:0&0=0,0&1=0,1&0=0,1&1=1 关于&&,这个是与运算符 真&&真 = 真 真&&假 = 假 假&&真 ...
为什么不能把float型当成变量赋值?
- **原因1:数据类型不匹配 `float`和`int`是两种不同的数据类型。`float`用于存储带有小数部分的数值,而`int`只能存储整数。编译器不会自动执行这种不同类型的隐式转换,尤其是在赋值操作中。- **原因2:精度损失 将`float`赋给`int`时,如果`float`的值不是恰好能表示为整数的,则会进行截断...
整数与浮点类型之间能进行混合计算吗?
c语言中如果一个运算符两边的运算数类型不同,先要将其转换为相同的类型,即较低类型转换为较高类型,然后再参加运算,转换规则:float(浮点型)转化为double(双精度浮点类型)、int(整型)转为unsigned(无符号整型)转为long(长整型)转为(双精度浮点类型)。因此,c语言中整型和浮点型混合运算,...
经验分享:C语言初学者常见的 10个错误!
首先,语言使用错误常常发生在符号的使用上。在中文和英文中转换时,可能会不小心将英文符号用成中文符号,例如中文分号“;”占用了两个字节,而英文分号“;”只占用一个字节。因此,在进行编程时,需要特别注意符号的正确使用,避免因符号错误而产生的编译错误。其次,忘打分号是另一个常见的错误。在C...
几个基本运算符的问题???初学,完全不明白
<<是左移,左移一位相当于乘以2,所以左移2位,就是i*4==256;5. i=64; j=i>>2 >>是右移,右移一位相当于除以2,所以右移两位,就是i\/4==16;6. (T)i ()中包含一个类型,是强制类型转换,就是把后边的变量变成括号中的类型。如:int a=10;flaot f;则可以:f=(float)a;
四道关于C语言的问题
->1.&&、| |都是先计算左边表达式的值,当左边表达式的值能确定整个表达式的值时,就不再计算右边表达式的值。如 a = 0 && b; &&运算符的左边位0,则右边表达式b就不再判断。->2.A.C中=和==的意思不同,=是赋值,==是等于.B.一个是等,一个是不等.C.IF(A)的意思就是A不等于0时...
求教为什么float不能%,报错
C语言求余运算符(%)要求参与的变量必须为整形!如果 LZ 一定想要,就自己定义,然后自己用函数实现,不能直接使用 %。
复合赋值运算符讲解
位运算符 学过汇编的朋友都知道汇编对位的处理能力是很强的,但是C语言也能对运算对象进行按位操作,从而使C语言也能具有一定的对硬件直接进行操作的能力。位运算符的作用是按位对变量进行运算,但是并不改变参与运算的变量的值。如果要求按位改变变量的值,则要利用相应的赋值运算。还有就是位运算符是不能用来对浮点...
C语言中的单目运算符的运算对象是不是char,int,float变量都可以?其实答 ...
都可以 int float就不用解释了吧 char型在运算的时候,会转换成asc码 在计算 比如 char a,b;a='a';b='b';计算a+b a对应的asc码是97,b对应的asc码是98,因此a+b=97+98
C语言运算的问题
先将a的值赋给b,a再自减1 a=3,b=a=3,然后a自减1,a=2 x=(a=3,b=a--),右边为逗号运算符,从左至右执行各语句,并将最后一个语句的计算结果赋给x,对于本题,也就是将b的值赋给x。x=3 因此,执行语句x=(a=3,b=a--);后,x的值是3,a的值是2,b的值是3。