c - c 中的分数移位

标签 c binary bit-shift

我有这个代码:

int a = 3, b = 2;
(a/b) << 3 ;

a/b 将如何移动?我如何用二进制表示分数?

最佳答案

(a/b) 不会移动。 它会评估表达式 (a/b) int/int 可能是一个 int,然后它会被移动。

(a/b) << 3
(3/2) << 3 //integer divided by an integer will gives you an integer, So you will get 1
(1) << 3 // 1 will get left shifted with 3 bits
8

关于c - c 中的分数移位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26728513/

相关文章:

c - 我无法显示最大 PSI 值对应的区域

c++ - 以十六进制表示位串的最佳实践(Arduino)

java - 将 2 个整数值组成一个 long

c - 用 8 位表示 2 个数字

c++ - char[] (c lang) 到 string (c++ lang) 转换

c - 为什么此代码会导致无效指针?

c - 通过 DLL 调用 C 函数期间 Excel 被锁定

java - 比较字符串与数组字符串以及二分查找

python - Postgres mogrify 将二进制添加到 SQL 字符串

c# - 为什么 Java 和 C# 有位移运算符?