uint24_t and uint48_t in MinGW
uint24_t and uint48_t in MinGW
我正在寻找GCC和MinGW中的uint24_t和uint48_t类型。我知道它们都不是标准化的,但我在网上看到了它们的参考资料,我想弄清楚:
- 我需要为它们包含什么头文件
- 它们是跨平台的(至少在Windows, Linux和Mac OSX上),还是仅针对特定目标。
- 他们的名字是什么。Uint24_t, __uint24, __uint24_t?
标准的uintXX_t类型在stint .h (C, c++ 98)或cstdint (c++ 11)中提供。
在8位数据、24位地址的AVR架构上,GCC提供了一个内置的24位整数,但它是不可移植的。有关它的更多信息,请参阅http://gcc.gnu.org/wiki/avr-gcc。
GCC或MinGW没有以平台独立的方式提供标准的24位或48位整数类型,但是在几乎任何平台上获得可移植的24位数字的一种简单方法是使用位域:
struct bitfield24 {
uint32_t value : 24;
};
bitfield24 a;
a.value = 0xffffff;
a.value += 1;
assert(a == 0);
对于48位也可以这样做,使用uint64_t作为基数。
相关文章:
- netcat command in c++
- Difference in displaying cv2 Mat
- 在VS代码中交叉编译Windows与Linux上的MinGW的SDL程序
- 如何将C++中的库和头与MinGW一起使用
- 为什么与常规GCC不同,即使有"学究性错误",MinGW-GCC也能容忍丢失的返回类型
- C++ MFC Libraries in Travis CI
- 如何在OpenSSL中从configuration.h.in获取configuration.h
- 无法在windows上使用mingw将sqlite3与c连接
- 创建具有 new in 函数和"this is nullptr"异常的对象
- IN, OUT, INOUT Parameters
- 应用程序崩溃并显示"symbol _ZdlPvm, version Qt_5 not defined in file libQt5Core.so.5 with link time reference"
- 有人安装"IITB Simplecpp in mac"吗?
- MinGw 无法从 cmake 编译测试文件
- 从 C 样式字符串中删除子字符串 "in place" 在C++代码中
- MSYS2 MinGW程序包中缺少grpc_cpp_plugin协议
- rand() in MinGW g++
- Compiling a DLL in C++ mingw 64
- 由于错误"'isblank' was not declared in this scope" Mingw 无法编译
- 如何从mingw获取socket(in.h)头文件
- uint24_t and uint48_t in MinGW