将整数转为二进制
2016-03-03 10:02
211 查看
将 int 类型的数转为二进制形式的字符串,sizeof()括号内可写int、short、char、long (其他没试过)
- (NSString *)intToBinary:(int)intValue{ int byteBlock = 8, // 每个字节8位 totalBits = sizeof(int) * byteBlock, // 总位数(不写死,可以适应变化) binaryDigit = 1; // 当前掩(masked)位 NSMutableString *binaryStr = [[NSMutableString alloc] init]; // 二进制字串 do { // 检出下一位,然后向左移位,附加 0 或 1 [binaryStr insertString:((intValue & binaryDigit) ? @"1" : @"0" ) atIndex:0]; // 若还有待处理的位(目的是为避免在最后加上分界符),且正处于字节边界,则加入分界符| if (--totalBits && !(totalBits % byteBlock)) [binaryStr insertString:@"|" atIndex:0]; // 移到下一位 binaryDigit <<= 1; } while (totalBits); // 返回二进制字串 return binaryStr; }
相关文章推荐
- bzoj1043: [HAOI2008]下落的圆盘
- PHP将字符串首字母大小写转换
- Lua Development Tools (LDT)
- .Net Discovery系列之三 深入理解.Net垃圾收集机制(上)
- 《从零开始学Swift》学习笔记(Day 37)——默认构造函数
- C#隐藏主窗口的方法小结
- Qt 5.3.0 与 Qwt插件不兼容问题解决办法
- android广播接收者 ip电话拔号器
- Git仓库的使用
- JVM 基础知识(GC)
- 出现( linker command failed with exit code 1)错误总结
- 怎样查看mysql pid文件路径 文件位置
- JSON格式化输出
- 263. Ugly Number
- 2089杭电
- mac 连接远程服务器、上传文件
- windows群集--NLB--故障转移群集区别
- CentOS6.4(64位系统下安装jdk)
- 平衡树的理解笔记
- 直方图匹配