首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >宏_bnd(X,bnd)是什么意思?

宏_bnd(X,bnd)是什么意思?
EN

Stack Overflow用户
提问于 2014-04-14 20:25:34
回答 1查看 113关注 0票数 0

最近我看到有人使用宏_bnd(x,bnd)实现了自己的printf,但是我不明白这个宏是什么意思。

代码语言:javascript
复制
#define _bnd(x, bnd) (sizeof(x) + (bnd) & ~(bnd))

我知道按位运算符和sizeof()

EN

回答 1

Stack Overflow用户

发布于 2014-04-14 20:44:09

它的内部实现魔术,利用变量参数函数的参数地址的依赖于实现的属性。

除非你需要知道这一切意味着什么,否则最好远离它。否则,它可能会诱使您依赖它。

你的宏应该是

代码语言:javascript
复制
#define _bnd(X, bnd) (sizeof(X) + (bnd) & ~(bnd))
             ^
             check in your post

你也可以通过扩展basic到达式operation.For来知道,你应该知道sizeof()tilde operatorbitwise operatior

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23060035

复制
相关文章

相似问题

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