可能重复:
C中使用的数据类型
嗨,我正在从Linux移植到Visual C ++。 我发现了很多错误。 什么是u_int32_t? 我在Visual C ++中找不到它? 它只在Linux中可用吗? 我应该在Visual C ++中使用哪种类型? 提前致谢 !!!
凯文
C99头文件stdint.h
定义了不依赖于体系结构或编译器的类型。 unsigned int的含义可以不同(例如16位系统上的16位宽),但stdint.h
中的那些类型具有特定的大小。
要么额外的下划线意外地滑入那里,要么有人为某些图书馆或其他任何人重新输入它们。 如果后者是这种情况,请包含您自己的一些标题,在该标题中包含stdint.h
并确保在typedef uint32_t u_int32_t
之后typedef uint32_t u_int32_t
。
这些不太标准的名称似乎是由BSD引入的: http : //lists.freedesktop.org/archives/release-wranglers/2004-August/000923.html
我不确定确切的类型,但根据名称,它看起来像一个无符号的32位整数 。 Visual C ++中的相应类型是unsigned int 。
还有其他别名,但这个名称就足够了。
这是一个无符号的int
数据类型,保证为32位。 要使用它,您需要包含stdint.h 。
我不确定这是否可以在最新版本的VC ++中直接使用。 维基百科页面包含指向与Microsoft编译器一起使用的各种实现的链接(例如msinttypes )。
如果您确定默认的unsigned int
类型总是32位,那么您可以在其位置上替换unsigned int
。 但是最好使用显式的32位数据类型。
不确定u_int32_t
,但uint32_t
是根据1999版C标准的标准类型 ,来自
。
Visual C ++已经选择不采用C99,因此它不受支持。 如果你包含
你可以使用DWORD
,它将是相同的大小,也是无符号的。
需要了解更多c/c++开发分享什么是u_int32_t?,也可以关注C/ C++技术分享栏目—计算机技术网(www.ctvol.com)!
以上就是c/c++开发分享什么是u_int32_t?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/978972.html