c++ - 如何将位从一个变量复制到另一个变量?

标签 c++ c variables copy bit-manipulation

假设我有这个 int 变量 v1:

1100 1010

还有这个变量int v2:

1001 1110

我需要将 v2 的最后四位复制到 v1 的最后四位,这样结果是:

1100 1110
^    ^ last four bits of v2
|
| first four bits of v1

我如何才能在 C 或 C++ 中执行此操作?我阅读了几篇有关按位运算的文章,但找不到任何专门关于此的信息。

最佳答案

按位运算是需要寻找的正确对象。

v1 = (v1 & ~0xf) | (v2 & 0xf);

在阅读的文章中是否有您不理解的具体内容?

关于c++ - 如何将位从一个变量复制到另一个变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14391707/

相关文章:

c - Valgrind 不显示行号

c++ - 如何以编程方式使系统崩溃

PHP - 将变量从一个页面传递到另一个页面

php - "Notice: Undefined variable"、 "Notice: Undefined index"、 "Warning: Undefined array key"和 "Notice: Undefined offset"使用 PHP

c++ - 中间目标文件抛出的对函数 c++ 的 undefined reference

c++ - 在类中存储 key 哈希以提高效率

c - 头文件被包含两次

C++变量在push_back之后没有传递它的值

c++ - 两层在 VS 2008 中调用 __VA_ARGS__ 失败

c++ - 在两个不同的顶点数组对象中使用顶点缓冲区