首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >UINT32_C与uint32_t的区别

UINT32_C与uint32_t的区别
EN

Stack Overflow用户
提问于 2017-08-02 06:56:26
回答 5查看 6.1K关注 0票数 9

据我所知,t在uint32_t中表示type名称,但我想知道UINT32_C中的C是什么,区别是什么?

EN

Stack Overflow用户

发布于 2017-08-02 07:06:25

UINT32_C是一个宏,用于编写类型为uint_least32_t的常量。这样的常量适用于初始化uint32_t变量。例如,我在avr-libc中找到了以下定义(这是针对AVR目标的定义,就像一个例子一样):

代码语言:javascript
运行
复制
#define     UINT32_C(value)   __CONCAT(value, UL)

所以,当你写

代码语言:javascript
运行
复制
UINT32_C(25)

它被扩展到

代码语言:javascript
运行
复制
25UL

ULunsigned long整数常量的后缀。宏很有用,因为uint32_t没有标准的后缀,所以您可以在不知道目标上uint32_ttypedef (例如unsigned long )的情况下使用它。对于其他目标,它将以不同的方式定义。

票数 8
EN
查看全部 5 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45453583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档