以 16 位存储日期
Storing a date in a 16 bits
我想以 16 位的方式存储日期,如下所示:
High Bytes: Y Y Y Y Y Y Y M
Low Bytes: M M M D D D D D
值在以下范围内
Year: 0 - 99
Month: 1 - 12
Day: 1 to 31
我意识到它会是这样的
byte a = (year << 10) + (month << 6) + day.
编码:
((year - year0) << 9) + (month << 5) + day
解码:
year = (date >> 9) + year0;
month = (date >> 5) & 15;
day = date & 31;
(year<<9) | (month<<5) | day;
相关文章:
- 将字符串存储在c++中的稳定内存中
- std::原子加载和存储都需要吗
- 查询SQLite数据库中的日期
- C++:将控制台输出存储在宏中更好吗
- 获取日期异步信号安全吗?如果在信号处理程序中使用,它会导致死锁吗
- 使用QProcess执行命令,并将结果存储在QStringList中
- 访问存储在向量C++中的结构的多态成员
- 如何从存储在std::映射中的std::集中删除元素
- 存储模板类型以强制转换回派生<T>
- 类型总是使用其大小存储在内存中吗
- 如何存储根据日期排序的预定义值在C 中排序
- BOOST :: Gregorian ::日期在内部存储日期
- 在SQLite中存储日期和计算年龄
- 对存储在矢量中的日期(字符串)进行排序
- 以 16 位存储日期
- 7zip 字符串/流压缩 PHP/C?存档中没有文件名/日期存储.7z每个字节都很重要
- 设计一个结构来存储时间和日期.写一个函数来计算两个时间之间的差(以分钟为单位)
- 有没有一种方法来存储日期和时间的结构?c++
- c++和Sqlite3:如何以毫秒精度存储日期/时间
- PST 文件中的日历邮件在哪里存储约会时间和日期