1
3
此代码是C89:
您不一定需要三个循环—如果需要,可以将它们组合在一起,如果只进行这两种输出中的一种,那么就不需要数组,只需在屏蔽时使用每个位值。但我认为这会使事情分开,希望更容易理解。 |
2
4
对于位调整,使用无符号类型通常更安全,因为有符号负值的移动具有依赖于实现的效果。平原
那么,你的朋友就是位布尔运算符(
如果您假设您的字符是8位,则可以将代码编写为:
您可能会注意到,由于我从右到左对位进行编号,但您希望从左到右输出,所以循环索引必须减少。
注意,根据C标准,
如果目标系统恰好是那些特殊的嵌入式DSP之一,这将阻止成功编译。作为注释上的注释,C标准中的“字节”一词表示“与
|
3
4
这可能不是最安全的方法-没有健全/大小/类型检查-但它应该仍然有效。
这将为字符提供一个无符号字符数组(0或1(true或false))。 |
Community wiki · C中有哪些耗时的操作? 1 年前 |
Community wiki · 将所有处理器电源都投入到任务中 1 年前 |
Community wiki · C++为C添加了什么?[已关闭] 1 年前 |
Community wiki · 打印1到1000,不带循环或条件 1 年前 |