热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

C/C++中的任意大小整数

如何解决《C/C++中的任意大小整数》经验,为你挑选了1个好方法。



1> milleniumbug..:

您不能创建大小小于的整数char(也就是说,每个对象的大小以字节为单位sizeof(char),即1 的倍数).但这不是问题,因为你可以在更大的数字内打包数字.

const unsigned size_in_bits = 3;
unsigned a = 1; // 001
unsigned b = 5; // 101
unsigned packed = (b <> size_in_bits*0) & ((1 <> size_in_bits*1) & ((1 <

或使用位域(语法更好,但二进制布局是实现定义的)

struct Date
{
    unsigned day : 5;
    unsigned month : 4;
    unsigned year : 21; 
};

Date d;
d.day = 5; d.mOnth= 11; d.year = 2014;


推荐阅读
author-avatar
烦了_12664
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有