C语言,参见位运算的操作数必须是整形常量或变量?为什么?其他类型的量不能用二进制表示吗?计算机识别的数不都是二进数吗?那为什么其他的量无法进行位运算.

来源:学生作业帮助网 编辑:作业帮 时间:2024/09/08 21:00:11
C语言,参见位运算的操作数必须是整形常量或变量?为什么?其他类型的量不能用二进制表示吗?计算机识别的数不都是二进数吗?那为什么其他的量无法进行位运算.
xݓn@_"O*jP`&C JDꗙ;3^z.BVƞqRzŽ95>]?m;Z@! 0l\P& ʚ aD$~cv9#A'Whƾ`vu Gml5wP)߱iIӶ+YH2n{oO?OGoV$piO hw rO^KS0UiD^$a& $}VF5@t3QX"wI"bnjtwQT*#G~ ٞ{|gKY]Fv69,\:2Oo4DL_PKez&{t4p".\Cֻddq$#v33 @N qe}TLæa~'a%W H`$Q:ſ/A{1*Lb>Tߕ?ꇻ

C语言,参见位运算的操作数必须是整形常量或变量?为什么?其他类型的量不能用二进制表示吗?计算机识别的数不都是二进数吗?那为什么其他的量无法进行位运算.
C语言,参见位运算的操作数必须是整形常量或变量?为什么?其他类型的量不能用二进制表示吗?
计算机识别的数不都是二进数吗?那为什么其他的量无法进行位运算.

C语言,参见位运算的操作数必须是整形常量或变量?为什么?其他类型的量不能用二进制表示吗?计算机识别的数不都是二进数吗?那为什么其他的量无法进行位运算.
计算机里的数据都是二进制保存的.无论是float还是double型的,实际保存的时候,都是0和1的组合,都是二进制的.
C语言中整型常量才能进行位运算,这是这个语言所作出的限制,与计算机没有什么关系.它如果被设计成允许其他类型数据可以进行位运算,也是可以的.只是由于数据保存方式的特殊性,其他类型数据做位运算从可理解性和实现效率方面来说,都有缺点,所以不适合做位运算.
你可以查阅一下float型在内存中具体是怎么保存的(和科学计数法有些类似),就会明白为什么对它进行位运算不好.