我需要一个4位整数在设计中用于较少的内存使用。在任何版本的C++,C++ 11,C++ 14任何可以用于设计。在C++中是否有实际的4位整数数据类型11
回答
没有原生的4位数据类型。但是你可以使用一个8位的值来保存高/低的两个4位值nibble。
半字节也仅用于结构中。是否有任何直接方式使用4位int –
@AmanGupta _“有没有什么直接的方法来使用4位int”_编号 –
没有,但你可以使用:
struct A {
unsigned int value1 : 4;
unsigned int value2 : 4;
};
但是这个结构也使用内存空间,所以在这种情况下使用了多少总空间。 –
@emlai不幸的是[不正确]( http://coliru.stacked-crooked.com/a/a5037c96e3494cf8) –
如果你使用'uint8_t'或'char'代替(假设是8位字符) – krzaq
- 1. 位掩码的整数和位(n)数据类型之间是否有区别?
- 2. 在C++ 11中是否有新的函数类型表达式格式?
- 3. C++中是否有64位整数的“标准”htonl函数?
- 4. C中的整数类型
- 5. mySQL数据类型 - int(11)
- 6. 如何获取Kotlin中实际泛型参数的实际类型参数?
- 7. 推断类型在lambda参数C++ 11
- 8. C#初始化整型数据类型
- 9. 是否有可能在C++中使用可自行调用的实际函数类型?
- 10. 处理整数数据类型是否有更有效的方法?
- 11. 是否有办法知道小数部分实际上是整数?
- 12. NULL是否有数据类型?
- 13. CAN数据是否有MIME类型?
- 14. 高效地在C++中读写混合数据类型 - 11
- 15. 如何将所有外键中的数据类型从32位整数升级到SQL中的64位整数?
- 16. 以9位,10位或11位(确切)块读取数据并在Objective-C/C中转换为整数
- 17. 从实际数据值确定列数据类型
- 18. C/C++中是否有自然数的基本类型?
- 19. Python数据类型是否都是基于C类的对象?
- 20. 在C++ 11 Regular Expressions中是否有match_partial?
- 21. 在Javascript中是否有一个设置数据类型的库?
- 22. 是否有在Redis中组合数据类型的操作?
- 23. JavaScript类型的数组:64位整数?
- 24. C#:数据类型是否与类型相同?
- 25. 是否有可能在c#中别名数组类型?
- 26. C中的数据类型
- 27. 为什么在C++ 11中的lambda函数没有函数<>类型?
- 28. C++中任意大小的整数的最低31位11
- 29. MySQL中是否有“数字”数据类型?
- 30. 是否sizeof返回C中的字节数或类型的八位字节数?
做了4位一个结构位域 –
没有没有这样的类型。但是你总是可以使用'uint8_t'和掩码和位移。 –
C++中最小的整型是'char',通常是8位。你的目标是内存受限的嵌入式系统吗?否则,尝试这些微优化(它也会使代码更难以阅读,理解和维护)是更多的工作。这也可能是一些不成熟的优化。请尝试详细说明*为什么*要使用“少内存”的方式,否则可能会使用更多的CPU周期。 –