取uint32_t的每一位
2016-06-14 13:29
288 查看
- (void)viewDidLoad {
[super viewDidLoad];
union{
uint32_t num;
struct uint32data da;
}val;
val.num = 30; // 00 01 11 10
NSLog(@"%d, %d , %d , %d", val.da.a, val.da.b, val.da.c, val.da.d); // 第一种
uint32_t data = 30;
struct uint32data da = *(struct uint32data *)&data; // 第二种
NSLog(@"%d, %d , %d , %d", da.a, da.b, da.c, da.d);
uint32_t dat = 30;
NSLog(@"%u, %u , %u , %u", dat&3, dat>>2&3, dat>>4&3, dat>>6&3); // 第三种
}
struct uint32data {
uint32_t a:2;
uint32_t b:2;
uint32_t c:2;
uint32_t d:2;
};
[super viewDidLoad];
union{
uint32_t num;
struct uint32data da;
}val;
val.num = 30; // 00 01 11 10
NSLog(@"%d, %d , %d , %d", val.da.a, val.da.b, val.da.c, val.da.d); // 第一种
uint32_t data = 30;
struct uint32data da = *(struct uint32data *)&data; // 第二种
NSLog(@"%d, %d , %d , %d", da.a, da.b, da.c, da.d);
uint32_t dat = 30;
NSLog(@"%u, %u , %u , %u", dat&3, dat>>2&3, dat>>4&3, dat>>6&3); // 第三种
}
struct uint32data {
uint32_t a:2;
uint32_t b:2;
uint32_t c:2;
uint32_t d:2;
};
相关文章推荐
- UITextView的使用
- 第二、UIScrollView的使用大全
- iOS- 编程:UIScrollView的使用方法
- IOS ----UIButton用法详解
- IOS--UILabel 用法详解
- build your own lisp ch7 笔记
- Leetcode 347.Top K Frequent Elements
- 应用Druid监控SQL语句的执行情况(转)
- uniquePaths
- Unique Binary Search Trees
- HTML之marquee标签详解
- 矩阵分解在推荐系统中的应用(中文译)- MATRIX FACTORIZATION TECHNIQUES FOR RECOMMENDER SYSTEMS
- Win10系统下软件UI显示不完整解决方案
- QtQuick学习笔记之QML定时器Timer
- iOS Bluetooth 打印小票
- *** Assertion failure in -[CLLocationManager setAllowsBackgroundLocationUpdates:], /BuildRoot/Librar
- [Android]判断是否是华为EMUI系统
- UITableView隐藏多余的分割线
- QtQuick学习笔记之QML键盘Keys事件
- easyui datagrid 多表头设置